在基本 R 中,可以轻松过滤到两列相等的行,如下所示:
mtcars[mtcars$cyl==mtcars$carb,]
使用
dplyr
的 filter
这可以很容易地完成mtcars %>% filter(cyl==carb)
但是,如果我使用此代码编写函数,我想使用
filter_
,但此代码不起作用mtcars %>% filter_("cyl"=="carb")
因为在这种情况下它认为“carb”是一个要测试的值而不是一个变量。
我的问题是如何使用
filter_
来比较 data.frame 中的两个变量? 最佳答案
把整件事放在引号中:
mtcars %>% filter_("cyl==carb")
或者,正如 effel 已经建议的那样,这也可以:
mtcars %>% filter_(~cyl==carb)
关于r - dplyr:过滤 data.frame 中两列相等的地方,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36139624/