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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章