如何在 r 中通过 seq_along 对两个矩阵求和?

How to sum two matrices by seq_along in r?

我有两个矩阵要求和

mat1<-matrix(1:4,2,2)    
mat2<-matrix(5:8,2,2)
mat1
     [,1] [,2]
[1,]    1    3
[2,]    2    4

mat2
 [,1] [,2]
[1,]    5    7
[2,]    6    8

我要的是这个

mat_sum
     [,1] [,2]
[1,]    6   10
[2,]    8   12 

我试过了

mat_sum <- sapply(seq_along(mat1), function(i)
mat1[[i]]+mat2[[i]])

但它不是 return 矩阵

[1]  6  8 10 12

我怎样才能把它变成 return 矩阵?

我们可以做一个常规的 +,它将保留 matrix 格式并进行元素求和

mat1 + mat2
#     [,1] [,2]
#[1,]    6   10
#[2,]    8   12

如果有很多矩阵,将其放在一个list中并使用Reduce+

Reduce(`+`, mget(paste0("mat", 1:2)))