繁体   English   中英

dplyr:如何将相同的过滤器应用于所有变量

[英]dplyr: How to apply the same filter to all variables

我相信必须有更好的方法来做到以下几点:

library(dplyr)
df %>%
  filter(X1 %in% c(0,1,2,5,10) &
           X2 %in% c(0,1,2,5,10) &
           X3 %in% c(0,1,2,5,10) &
           X4 %in% c(0,1,2,5,10) &
           X5 %in% c(0,1,2,5,10) &
           X6 %in% c(0,1,2,5,10) &
           X7 %in% c(0,1,2,5,10) &
           X8 %in% c(0,1,2,5,10) &
           X9 %in% c(0,1,2,5,10) &
           X10 %in% c(0,1,2,5,10) &
           X11 %in% c(0,1,2,5,10) &
           X12 %in% c(0,1,2,5,10) &
           X13 %in% c(0,1,2,5,10) &
           X14 %in% c(0,1,2,5,10) &
           X15 %in% c(0,1,2,5,10) &
           X16 %in% c(0,1,2,5,10) &
           X17 %in% c(0,1,2,5,10) &
           X18 %in% c(0,1,2,5,10) &
           X19 %in% c(0,1,2,5,10) &
           X20 %in% c(0,1,2,5,10) )

从上面的评论,以下工作。

df[apply(df, 1, function(x) all(sapply(x, function(y) y %in% c(0, 1, 2, 5, 10)))), ]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM