2017-03-09 331 views
0

我有簡單的矩陣,我想爲矩陣中的所有值創建行和列組合。將矩陣轉換爲r中的2d數據幀

mat <- matrix(c(2, 4, 3, 1, 5, 7), nrow=3, ncol=2) 
colnames(mat) <- c("col1","col2") 
rownames(mat) <- c("row1","row2","row3") 

和期望的輸出:

cols rows value 
col1 row1 2 
col1 row2 4 
col1 row3 3 
col2 row1 1 
col2 row2 5 
col2 row3 7 

是否有任何簡單快速的解決方案。非常感謝您的任何建議。

+0

http://stackoverflow.com/questions/2185252/reshaping-data-frame-from-wide-to-long-format – jogo

回答

1

使用reshape2包的melt

library(reshape2) 
mat <- matrix(c(2, 4, 3, 1, 5, 7), nrow=3, ncol=2) 
colnames(mat) <- c("col1","col2") 
rownames(mat) <- c("row1","row2","row3") 
melt(mat) 
+0

非常感謝,融化的伎倆:-) – martinkabe