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
我有这样的矩阵:
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