我有一个包含10个元素的列表,每个元素包含两个变量。
$`1.10%.100`
sqm tempo
127.4444 0.1500
$`10.10%.100`
sqm tempo
367.00 0.16
$`2.10%.100`
sqm tempo
248.7778 0.1900
$`3.10%.100`
sqm tempo
139.00 0.13
$`4.10%.100`
sqm tempo
139.00 0.14
$`5.10%.100`
sqm tempo
223.00 0.17
$`6.10%.100`
sqm tempo
155.4444 0.1500
$`7.10%.100`
sqm tempo
248.7778 0.1400
$`8.10%.100`
sqm tempo
90.11111 0.14000
$`9.10%.100`
sqm tempo
90.11111 0.17000
我想逐个计算平均值,并将其填入新列表中。
例如我想:平均值(127.4444,367.00)和平均值(0.15,0.16)......对于元素3和4,5和6都是一样的,依此类推。
答案 0 :(得分:1)
你可以尝试:
#generate some sample data hopefully similar to yours
set.seed(1)
#set the size of the aggregation (you can change it to 10 for instance)
n<-2
mylist<-replicate(10,c(sqm=runif(1,100,1000),tempo=runif(1)),simplify=FALSE)
matrix(colMeans(`dim<-`(do.call(rbind,mylist),c(n,length(mylist)/n*2))),ncol=2)
# [,1] [,2]
#[1,] 477.2629 0.6401658
#[2,] 615.8607 0.7795937
#[3,] 475.7899 0.1191715
#[4,] 755.5889 0.4409015
#[5,] 593.9442 0.8846757
第一列是sqm
元素的平均值,另一列是tempo
平均值。