【发布时间】:2012-11-01 10:38:34
【问题描述】:
我有一个列表,我想使用lapply() 来计算其元素的平均值。例如,对于列表的第七项,我有:
>list[[7]]
[1] 1 1 1 1 1 1 1 1 1 1
我的输出应该是:
> mean(temp[[7]][1:10])
[1] 1
但是当我像下面这样使用lapply() 时,结果会有所不同。我该怎么办?
> lapply(list[[7]][1:10],mean)
[[1]]
[1] 1
[[2]]
[1] 1
.
.
.
[[10]]
[1] 1
【问题讨论】:
-
如果您在列表的单个元素上使用
lapply,您将取向量中每个元素的平均值。请改用lapply(list, mean)。此外,使用list作为变量名是个坏主意,因为它是一个重要功能!