将列名称作为函数的参数传递

有时,人们希望将数据框中的列名称传递给函数。它们可以作为字符串提供,并在使用 [[ 的函数中使用。让我们看看下面的例子,它打印到 R 控制台的所选变量的基本统计数据:

basic.stats <- function(dset, vars){
    for(i in 1:length(vars)){
        print(vars[i])
        print(summary(dset[[vars[i]]]))
    }
}

basic.stats(iris, c("Sepal.Length", "Petal.Width"))

作为运行上面给定代码的结果,所选变量的名称及其基本汇总统计(最小值,第一分位数,中位数,平均值,第三分位数和最大值)在 R 控制台中打印。代码 dset[[vars[i]]] 从参数 vars 中选择第 i 个元素,并在声明的输入数据集 dset 中选择相应的列。例如,单独声明 iris[["Sepal.Length"]] 将从 iris 数据集中打印 Sepal.Length 列作为向量。