编写一个以列名为输入的函数

时间:2019-10-18 16:05:00

标签: r function tidyverse non-standard-evaluation

我想创建一个将数据框的列名作为输入的函数,然后对该列执行操作。

例如,如果我们使用mtcars数据集:

df <- mtcars
range(df$mpg)
#> [1] 10.4 33.9

为了使我的问题简化和重现,我想弄清楚如何制作一个简单的函数,该函数仅将列名作为输入参数(即仅mpg,而不是df$mpg ):

get_range(mpg)

我已经尝试过了:

get_range <- function(variable_name){
  range(paste0("df$", get(variable_name)))
}

但是我没有得到预期的结果:

get_range("mpg")
#> Error in get(variable_name): object 'mpg' not found

0 个答案:

没有答案