繁体   English   中英

如何将 function 应用于 R 中的数据帧?

[英]how to apply a function to a data frame in R?

我想知道如何将 function 应用于数据帧,例如,如果我想要一个返回某个列的平均值的 function(例如,我放入函数中的每个数据帧中的第 13 列)我如何指定该指令和将数据框放在参数的位置。

mean <- function (argument) {} 

mean <- function(data frame) {} #this is what I try to do 

问题是我必须得到 13 个表的平均值,但我只使用每个表的 1 列,我必须将它们收集在一个数据框中,我认为如果我为每个表设置一个 function 会更容易(数据框架),这给了我独特的结果。

像对待任何其他 dataframe 一样对待 function 的输入。 以下是您要查找的内容的总体布局:

df_mean <- function(df) {
    mean(df$desiredColumnName)
}

lapply(dataframe_list, df_mean)

当然,它假设您在每个 dataframe 中查找相同的列名,并且您的数据框位于列表中。

或者,由于这很简单,匿名 function 也可以:

lapply(dataframe_list, function(x) mean(x$desiredColumnName))

如果您将文件作为 csvs 存储在一个目录中,则可以将它们读入如下列表:

dataframe_list <- lapply(list.files(directory_path, recursive = TRUE, full.names = TRUE), read.csv)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM