2014-07-23 244 views
0

我有100個矩陣行和列的數量相同。我想將它們全部合併到一個矩陣中。什麼是最好的方式來做到這一點?合併矩陣R

我已經嘗試過「追加」,但我不知道爲什麼結果矩陣是空的。這是我所做的:

Aggregate<-function(files,filepath,Matrix){ 
      for(f in files) { 
       file<-file.path(filePath,f) 
       temp<-read.table(file,head=T) 
       for(i in 1:nrow(temp)){ 
        append(Matrix,temp[i, ]) 
       } 
      } 
    return(Matrix) 
    } 

這段代碼有什麼問題嗎?

感謝

+1

你是什麼意思*合併*? – merlin2011

+0

'append'將值附加到矢量而不是矩陣。你應該使用'rbind'或'cbind'。 – stanekam

+0

我想要在一個大矩陣中聚合所有這些元素。矩陣的大小是240x85 – user1080814

回答

1

你想cbind or rbind

採取的向量,矩陣或數據幀參數的順序和列或行,分別結合 。這些是其他R類的 方法的通用函數。

+2

更完整的答案是將所有矩陣收集到列表中,首先在文件名/路徑上''read'table',然後調用'do.call(rbind,listofmatrices )' – thelatemail

+0

如何將所有矩陣收集到列表中?我使用file.path來訪問特定路徑中所需的矩陣。我應該使用do.call for file.path嗎? – user1080814

+0

發佈所有代碼! –