基于元素的矩阵列表

And*_*rej 36 r

假设你有矩阵列表.以元素为基础计算元素均值矩阵的最方便方法是什么?假设我们有一个矩阵列表:

> A <- matrix(c(1:9), 3, 3) 
> A
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    2    5    8
[3,]    3    6    9
> B <- matrix(c(2:10), 3, 3) 
> B
     [,1] [,2] [,3]
[1,]    2    5    8
[2,]    3    6    9
[3,]    4    7   10
> my.list <- list(A, B)
Run Code Online (Sandbox Code Playgroud)

所以期望的输出应该是:

     [,1] [,2] [,3]
[1,]  1.5  4.5  7.5
[2,]  2.5  5.5  8.5
[3,]  3.5  6.5  9.5
Run Code Online (Sandbox Code Playgroud)

cog*_*ita 62

您可以使用:

Reduce("+", my.list) / length(my.list)
Run Code Online (Sandbox Code Playgroud)

根据评论,你想要两者meansd在矩阵列表上实现,并且上述方法将无法顺利进行sd.试试这个:

apply(simplify2array(my.list), 1:2, mean)
apply(simplify2array(my.list), 1:2, sd)
Run Code Online (Sandbox Code Playgroud)