将数据框摘要保存为数据框

时间:2014-09-29 18:47:52

标签: r dataframe summary

我使用tapplydata.frame的因子生成摘要。如,

s <- with(mtcars, tapply(mpg, cyl, summary))

我看到s的类是一个数组。有没有一种简单的方法可以将tapply输出转换为另一个data.frame

1 个答案:

答案 0 :(得分:4)

典型的方法是使用do.call(rbind, ...),如下所示:

do.call(rbind, s)
#   Min. 1st Qu. Median  Mean 3rd Qu. Max.
# 4 21.4   22.80   26.0 26.66   30.40 33.9
# 6 17.8   18.65   19.7 19.74   21.00 21.4
# 8 10.4   14.40   15.2 15.10   16.25 19.2

正如前面评论中@akrun所提到的那样,将其包装在as.data.frame中可以得到data.frame


如果你对替代品持开放态度,你也可以试试&#34; data.table&#34;,你可以做到:

library(data.table)
as.data.table(mtcars)[, as.list(summary(mpg)), by = cyl]
#    cyl Min. 1st Qu. Median  Mean 3rd Qu. Max.
# 1:   6 17.8   18.65   19.7 19.74   21.00 21.4
# 2:   4 21.4   22.80   26.0 26.66   30.40 33.9
# 3:   8 10.4   14.40   15.2 15.10   16.25 19.2