如何将表转换为数据框

我有一个表在R中有str()这样:

table [1:3, 1:4] 0.166 0.319 0.457 0.261 0.248 ...
 - attr(*, "dimnames")=List of 2
  ..$ x: chr [1:3] "Metro >=1 million" "Metro <1 million" "Non-Metro Counties"
  ..$ y: chr [1:4] "q1" "q2" "q3" "q4"

当我打印它看起来像这样:

y
x                           q1        q2        q3        q4
  Metro >=1 million  0.1663567 0.2612212 0.2670441 0.3053781
  Metro <1 million   0.3192857 0.2480012 0.2341030 0.1986102
  Non-Metro Counties 0.4570341 0.2044960 0.2121102 0.1263597

我想摆脱x和y,并将其转换为一个数据框,看起来完全一样的上述(三行,四列),但没有x或y。如果我使用as.data.frame(mytable),而不是我得到这个:

x  y      Freq
1   Metro >=1 million q1 0.1663567
2    Metro <1 million q1 0.3192857
3  Non-Metro Counties q1 0.4570341
4   Metro >=1 million q2 0.2612212
5    Metro <1 million q2 0.2480012
6  Non-Metro Counties q2 0.2044960
7   Metro >=1 million q3 0.2670441
8    Metro <1 million q3 0.2341030
9  Non-Metro Counties q3 0.2121102
10  Metro >=1 million q4 0.3053781
11   Metro <1 million q4 0.1986102
12 Non-Metro Counties q4 0.1263597

我可能根本不了解表与数据框架的关系。

我想出来了:

as.data.frame.matrix(mytable)

做我需要的 – 显然,表需要以某种方式转换为矩阵,以便被适当地转换为数据帧。我发现更多的细节在这as.data.frame.matrix() function for contingency tables at the Computational Ecology blog

相关文章
相关标签/搜索