如何在r中使用tidyverse筛选行?

如何在r中使用tidyverse筛选行?,r,dataframe,select,filter,tidyverse,R,Dataframe,Select,Filter,Tidyverse,我原以为这是件容易的事,但却让我头疼不已。当满足特定的条件时,我试图过滤行,但是,我得到了一个错误。下面是一个示例代码 library(tidyverse) DF = data.frame(id = sample.int(20,20, replace = TRUE), A = runif(20, 100, 150), Dat = runif(20, 400,700)) DF_1 = DF %>% filter(id == c(6,8,17)) 但是代码在下面给了我一个警告,带有DF_1

我原以为这是件容易的事,但却让我头疼不已。当满足特定的
条件时,我试图
过滤
行,但是,我得到了一个错误。下面是一个示例代码

library(tidyverse)

DF = data.frame(id = sample.int(20,20, replace = TRUE), A = runif(20, 100, 150), Dat = runif(20, 400,700))
DF_1 = DF %>% filter(id == c(6,8,17))
但是代码在下面给了我一个警告,带有
DF_1
数据框
,当
id
等于8和17时,它只包含数据,而
id
应该给我一个
数据框
等于6,8和17

警告信息:

在id==c(6,8,17)中: 较长的对象长度不是较短对象长度的倍数


您应该使用%
中的
%而不是
=
进行筛选

DF_1 = DF %>% 
  filter(id %in% c(6,8,17))