R语言——将循环所得矩阵组成一个矩阵

    在矩阵合并中,常见的方法有cbind()rbind()。其中,前者为按列合并,后者为按行合并。
    但是这两个函数有个缺点,就是不能应用到循环之中。例如:

A<-matrix(1:12,nrow = 4,byrow = T)
B<-matrix(1:8,nrow = 4,byrow = T)
C<-cbind(A,B)

    得到的矩阵C为【按列合并两者行数必须相同】:
C
    但是如果将这个方法应用在循环中,就无法取得预期效果:

A<-matrix(1:12,nrow = 4,byrow = T)
C<-matrix(0,ncol = 3,byrow = F)
for (i in 1:3) {
  C[1,]<-A[1,i]
}

    结果为:
    A:
A
    C:
C
    所以,如果要循环写入的话,不需要for循环即可:

A<-matrix(1:12,nrow = 4,byrow = T)
C<-matrix(0,ncol = 3,byrow = F)
C[1,]<-A[1,1:3]

    C:
C
    同样的方法也可以用在一行或一列统一写入新矩阵中
    搞定!
    债见!
1

猜你喜欢

转载自blog.csdn.net/sinat_41805381/article/details/79976507