将矩阵转换为r中的2d数据帧

时间:2017-03-09 13:23:44

标签: r

我有简单的矩阵,我想为矩阵中的所有值创建行和列的组合。

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

有没有简单快速的解决方案。非常感谢您的任何建议。

1 个答案:

答案 0 :(得分:1)

使用melt包的reshape2

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)