r - 如何将内置函数名称存储在 Vector 中并通过 R 中的循环进行解析
问题描述
我是 R 新手,需要一些帮助。
我想通过 For 循环为 dataframe 中的每一列计算平均值、中位数等df
。这些函数存储在 vector 中my_func
。我无法转换存储在向量中的变量my_func
来执行预期的功能。我将统计信息添加到数据框的底部:
my_func=c("mean", "median", "stats::sd", "max", "min")
for (func in my_func){
new_row <- c()
for (i in names(df)){
y <- func(df[ ,i], na.rm=F)
new_row <- c(new_row, y)
}
df[nrow(df)+ 1, ] = c(new_row[1:11])
rownames(df)[nrow(df)] <- j
}
解决方案
您可以将函数存储在不带引号的向量中:
my_func <- c(mean, median, stats::sd, max, min)
然后它应该工作。请注意,my_func
它将变成一个列表。
推荐阅读
- json - 使用 XSLT 从 JSON 中提取信息并将格式输出为 JSON
- javascript - 如何检查 vue.js 模板中的列表是否为空?
- html - 文本没有在 span 中急切地对齐
- actionscript-3 - 如何同时hittestObject多个影片剪辑
- selenium - “根据条件在 testNG 中执行测试”
- python - 如何实现只有一层访问权限的 python 模块
- javascript - 为什么将 MKV 文件添加到文件输入时没有返回文件类型?
- flutter - Flutter BLoC 和应始终开启的应用程序的流
- android - 是否有任何颤振插件可以在 android 中播放实时流媒体视频(.m3u8)?
- python - Python - 将虚拟参数添加到函数签名