如何在 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)))
我有两个矩阵要求和
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)))