R - 将矩阵转换为一列 table

R - convert matrix to one-column table

我有这样的矩阵:

    a    b    c
x   1    2    3
y   3    3    2

我需要将其转换为 data.frame,如下所示

x a 1 
x b 2 
x c 3 
y a 3 
y b 3 
y c 2 

我知道 split() 应该可以工作,但我不能将 a、b、c 设置为行的第二个名称。我该怎么办?

您可以使用 as.data.frame(as.table()):

m <- matrix(c(1,3,2,3,3,2), nrow = 2)
rownames(m) <- c("x", "y")
colnames(m) <- letters[1:3]

  a b c
x 1 2 3
y 3 3 2

as.data.frame(as.table(m))

  Var1 Var2 Freq
1    x    a    1
2    y    a    3
3    x    b    2
4    y    b    3
5    x    c    3
6    y    c    2