dplyr 过滤器语句不在 data.frame 的表达式中

dplyr filter statement not in expression from a data.frame

我想在 dplyr 中使用 not in 语句和 data.frame,但它不起作用。我想从 data.frame 中排除值,因为我的周数确实很大。下面是一个例子

df1 = data.frame(week=c(1,2,3,4,5,6),sales=c(10,24,23,54,65,45))
week_e=data.frame(week=c(2,5)) 

所以我想从 df1 中排除 week_e 数据框中的周,下面是代码 它不工作。请帮忙!谢谢。

       df1  %>%
       filter(!week %in% week_e)  

       week sales
   1    1    10
   2    2    24
   3    3    23
   4    4    54
   5    5    65
   6    6    45

其实我得到了答案。在week_edata.frame中加一个unlist就解决了

 df1 = data.frame(week=c(1,2,3,4,5,6),sales=c(10,24,23,54,65,45))
 week_e=unlist(data.frame(week=c(2,5)))

 df1  %>%
 filter(!week %in% week_e) 

 week sales
  1    10
  3    23
  4    54
  6    45