在SPSS中,使用“自定义表”创建分类变量的摘要表非常容易:
如何在R中做到这一点?
首选通用解决方案和可扩展解决方案,而使用
Plyr和/或Reshape2软件包,因为我正在尝试学习这些软件包。
示例数据:(mtcars在R安装中)
df <- colwise(function(x) as.factor(x) ) (mtcars[,8:11])
P.S.
请注意,我的目标是将所有内容都放在一张表格中,如图所示。
我已经苦苦挣扎了好几个小时,但是我的尝试非常糟糕,以至于发布代码可能不会增加问题的可理解性。
最佳答案
一种获取输出而不是格式化的方法:
library(plyr)
ldply(mtcars[,8:11],function(x) t(rbind(names(table(x)),table(x),paste0(prop.table(table(x))*100,"%"))))
.id 1 2 3
1 vs 0 18 56.25%
2 vs 1 14 43.75%
3 am 0 19 59.375%
4 am 1 13 40.625%
5 gear 3 15 46.875%
6 gear 4 12 37.5%
7 gear 5 5 15.625%
8 carb 1 7 21.875%
9 carb 2 10 31.25%
10 carb 3 3 9.375%
11 carb 4 10 31.25%
12 carb 6 1 3.125%
13 carb 8 1 3.125%
关于r - 创建不同长度的分类变量汇总表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15111629/