R求和循环中的矩阵

时间:2014-07-03 06:00:30

标签: r loops matrix sum

我使用 R 计算for循环中的50个矩阵。我怎样才能总结所有50 matrices之类的内容:

for(j in 1:50){

  mat = matrix(j,3,3)

}

没有必要保留所有50个矩阵。我只需要循环中所有计算矩阵的总和,比如1 + 2 + ... + 49 + 50.先谢谢你。

2 个答案:

答案 0 :(得分:0)

我认为这就是你的目标:

### reproducible
set.seed(1)
### no. matrices
j <- 3
### 'pre-allocate' list
l1 <-  vector("list", length=j)
### fill it (all different)
for (i in 1:j){
    l1[[i]] <- matrix(rnorm(9), nrow=3)
}
### taken from ?Reduce
add <- function(x) Reduce("+", x)
add(l1)

有关更多示例,请参阅?Reduce

注意;中的行结尾不需要分号R

答案 1 :(得分:0)

如果matrixlist是包含所有50种矩阵的列表,那岂不是说起来那么简单

summatrix <- Reduce("+", matrixlist)

我只是有一个类似的问题,并且感到围绕类似问题的很多答案都非常复杂。上面的代码对我有用,但是我不确定是否足够。满意反馈