如何使用 dplyr 对多个字段使用 select

how to use select for multiple fields using dplyr

我有一个字段名称的字符向量,我想 select 使用 dplyr。我正在使用 select_().

的下划线版本
select(mtcars, mpg)                   # works OK
select(mtcars, mpg, disp, am)         # works OK for multiple fields

现在让我们使用下划线版本

fie <- c("mpg")             
select_(mtcars, fie)                  # works OK for one
fie <- c("mpg", "disp", "am")
select_(mtcars, fie)                  # problem:  only returns one column
select_(mtcars, ~fie)                 # problem:  doesn't work

我对如何让它发挥作用感到困惑。有什么建议么? 谢谢

您应该使用函数标准评估版的.dots=参数。

select_(mtcars, .dots=fie)

如果你使用select:

select(mtcars, one_of(fie))