【发布时间】:2022-12-12 18:16:42
【问题描述】:
假设我们有这个数据框:
> data <- data.frame('a' = c('a', 'b', 'c'),
'b' = c('d', 'e', 'f'),
'c' = c('g', 'h', 'i'),
'd' = c('j', 'k', 'l'))
如果我想根据 a 列进行过滤以获得一些价值,我可以这样做:
> library(dplyr)
> data %>% filter(a == "b")
a b c d
1 b e h k
如果我想根据 a 和 b 列进行过滤以获得一些价值,我可以这样做:
> library(dplyr)
> data %>% filter(a == "c" & b == "f")
a b c d
1 c f i l
如果我有一个任意长度的列列表怎么办? 有没有办法做这样的事情?
> data %>% filter(c(a,b) == c("c","f"))
因此,我可以将任意列名列表以及所需值列表传递给过滤器函数。
【问题讨论】: