选择较早的线程(Use string as filter in dplyr?),
随着filter_
被弃用,新的tidyeval答案是什么。
是否可以使用字符串变量作为dplyr中的过滤器参数?例如:
filter(iris,Sepal.Length > 6)
将替换为
string <- 'Sepal.Length > 6'
filter(iris,string)
答案 0 :(得分:3)
也许:
filter(iris, !! rlang::parse_expr(string))
但是据我所知,tidyeval的哲学是将字符串编码当作首字母缩写,因此一开始不应该string <- 'Sepal.Length > 6'
。
也许相反:
condition <- expr(Sepal.Length > 6)
filter(iris, !! condition)