【发布时间】:2014-11-27 18:45:10
【问题描述】:
我想将上三角复制到存储在列表中的一堆矩阵的下三角。
创建一个矩阵列表,其中只有上三角填充了数据:
m1<-matrix(1:9, 3, 3);lower.tri(m1);m1[lower.tri(m1)]<- NA; m1
m2<-matrix(9:18, 3, 3);lower.tri(m2);m2[lower.tri(m2)]<- NA; m2
m3<-matrix(18:27, 3, 3);lower.tri(m3);m3[lower.tri(m3)]<- NA; m3
m4<-matrix(27:36, 3, 3);lower.tri(m4);m4[lower.tri(m4)]<- NA; m4
L<-list(m1,m2, m3, m4); L
要将上三角复制到矩阵的下三角,可以使用:
M <- m1
for(i in 1:nrow(M)) {for(j in 1:i) {M[i,j]=M[j,i] }}
M
但是,我想将列表“L”中每个矩阵的上三角复制到下三角
【问题讨论】: