在dplyr包中使用过滤器

时间:2014-11-06 04:34:13

标签: r dplyr

我不确定我做错了什么。我有一个数据框,而不是一个以上的研究。我想过滤第7,9,120号研究。我在filter包中使用dplyr,如下所示:

df <- filter(data, STUDY==7, STUDY==9, STUDY==100)

这给了我一个ZERO观测数据框。当我只过滤一个STUDY时,它可以工作。为了过滤一系列研究,编写它的正确方法是什么?

1 个答案:

答案 0 :(得分:7)

尝试

library(dplyr)
data %>%
    filter(STUDY %in% c(7,9, 100))

或者

data %>%
     filter(STUDY==7|STUDY==9|STUDY==100) 

数据

set.seed(24)
data <- data.frame(STUDY=sample(c(0,5,7,9,100,150,200),
                          25, replace=TRUE), Val=rnorm(25))