3

拿起较早的线程,(在 dplyr 中使用字符串作为过滤器?),新的答案将是什么,因为filter_已被弃用。

中使用字符串变量作为过滤器参数?例如:

filter(iris,Sepal.Length > 6)

将被替换为

string <- 'Sepal.Length > 6'
filter(iris,string)
4

1 回答 1

4

也许:

filter(iris, !! rlang::parse_expr(string))

但据我了解 tidyeval 哲学,作为字符串的代码是不受欢迎的,一开始就不应该存在string <- 'Sepal.Length > 6'

也许相反:

condition <- expr(Sepal.Length > 6)
filter(iris, !! condition)
于 2018-08-03T08:18:17.940 回答