在R中,我有一个对象dataList
,它是一个列表,其中每个条目都是一个数据框。每个数据帧都有两列,两列的长度相同(如果重要,则为300列。dataList
的长度为1000个条目)。
我需要取该列表中所有ith位置的平均值。即我需要每个数据帧的所有条目(i,2)的平均值。因此,应该对(1,2)个条目中的所有300个进行平均,我希望这个数字存储在新列表的第一个位置。
对于如何做到这一点,我持开放态度;如果有更好的方法来存储数据,那可能会更好。
答案 0 :(得分:1)
这是一个可以帮助您的最小例子:
# create dummy data
d1 <- data.frame(weight = c(23,78,98,50), height=c(50,170,190,150))
d2 <- data.frame(weight = c(13,58,78,90), height=c(20,140,172,200))
# create a list
data_list <- list(d1,d2)
# find mean of second colum in a new list
l1 <- lapply(data_list, function(x) mean(x[[2]]))
print(l1)
[[1]]
[1] 140
[[2]]
[1] 133