【发布时间】:2014-06-05 19:52:03
【问题描述】:
我需要计算不同长度向量列表顶部 x 和底部 x 部分的平均值(或其他汇总函数)。
这里是 3 个不同长度的向量列表,格式与我正在使用的相似:
t <- list(a = exp(-4:3), b = exp(-2:12), c = exp(-5:3))
理想情况下,我希望每种类型的均值都有一个数字向量(我手动运行 mean(head(t$a),2)) 和 mean(tail(t$a),2)) 为每个向量):
理想的输出产生一个无名向量,每个向量的前两个元素的均值:
[1] 0.2516074 1.859141 0.09256118
每个向量中最后两个条目的第二个均值向量:
[1] 1.859141 15064.77 1.859141
寻找一个聪明的 lapply-type 构造来为每个方法获取一个数字向量,而不需要附加名称(在本例中为 a、b、c)。谢谢!
【问题讨论】:
-
unname(lapply(t, function(x) c(mean(head(x, 2)), mean(tail(x, 2)))))。顺便说一句,可能不想使用t作为变量名,因为它是一个基本的 R 函数。
标签: r