将单变量连续表转换为R中的数据帧

时间:2015-09-15 00:06:36

标签: r contingency

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

>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()之类的东西都会为我返回错误,我想因为我的数据是单变量而不是多变量。

1 个答案:

答案 0 :(得分: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