将单变量偶然性 Table 转换为 R 中的数据帧

Convert Univariate Contingecy Table to Data Frame in R

我有一个单变量意外事件 table,我想将其转换为数据框。

>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

我想要一个看起来与 table t 完全一样的数据框,其中有 4 列分别命名为 1、2、3 和 4(或 X1、X2、X3、X4)和一行。我能找到的任何帮助,对我使用 as.data.frame.matrix() return 之类的错误,我想是因为我的数据是单变量而不是多变量。

我们可以使用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