【发布时间】:2015-07-22 10:00:00
【问题描述】:
我有一个数字矩阵,我想从每列中获取 5 个最低(最小值)元素的平均值。 我正在尝试使用可用的不同应用功能之一。但我做不到。
这是我需要应用的函数,我已经用 for 循环对其进行了测试,效果很好。
mean(head(sort(table[,x]),5))
这是我尝试过的几个示例之一:
a<-mapply(function(x){mean(head(sort(table[,x]),5))},table)
我收到以下错误:
Error in `[.data.frame`(x, order(x, na.last = na.last, decreasing = decreasing)) : undefined columns selected
我也尝试过 sapply、lapply……但我还没有成功。找不到任何依据,上网冲浪..
提前致谢
【问题讨论】:
-
apply(df, 2, function(x) mean(sort(x, decreasing = F)[1:5]))
标签: r matrix lapply sapply mapply