1

我有一个单变量列联表,我想将其转换为数据框。

>t <- table(c(1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4))
>t

1 2 3 4 
4 4 4 4

但是将 t 转换为数据框会产生我不需要的东西:

>data.frame(t)
  Var1 Freq
1    1    4
2    2    4
3    3    4
4    4    4

我想要一个看起来与表 t 完全一样的数据框,有 4 列名为 1、2、3 和 4(或 X1、X2、X3、X4)和一行。我可以找到任何帮助,使用 as.data.frame.matrix() 之类的东西为我返回错误,我认为是因为我的数据是单变量的而不是多变量的。

4

1 回答 1

2

我们可以用as.data.frame.list()

tbl <- table(rep(1:4, 4))

as.data.frame.list(tbl)
#   X1 X2 X3 X4
# 1  4  4  4  4

或使用原始名称,添加optional = TRUE

as.data.frame.list(tbl, optional = TRUE)
#   1 2 3 4
# 1 4 4 4 4
于 2015-09-15T00:11:14.587 回答