我的数据如下:
(sassign是保存数据的data.frame)
head(sassign %>% select(child,youth,cook,do_it))
child youth cook do_it
1 3 2 2 0
2 0 1 0 1
3 0 0 2 0
4 0 0 0 0
5 0 0 1 0
6 0 1 0 0
我的目标是找到购买儿童书籍,青少年书籍,烹饪书籍和do_it书籍的人数。
所以,这就是我的所作所为:
sassign %>% summarise( sumchild=sum(child),sumyouth=sum(youth),sumcook=sum(cook),sumdo_it=sum(do_it))
这是我得到的输出:
sumchild sumyouth sumcook sumdo_it
1 42723 19549 46830 23153
问题1 ::这解决了我的目的,但无论如何我可以得到一个按列排序的输出?这是我从Stata得到的:
--------------------------------------------------------------
| Total Std. Err. [95% Conf. Interval]
-------------+------------------------------------------------
cook | 46830 265.0706 46310.46 47349.54
child | 42723 250.4739 42232.07 43213.93
do_it | 23153 171.2552 22817.34 23488.66
youth | 19549 152.7226 19249.66 19848.34
如上所示,STATA输出从上到下排序很好。
问题2 ::无论如何我还可以包含SD,而CI作为STATA显示吗?
问题3 ::无论如何,我可以对SD进行排序,或者在R中对CI进行排序而不是总和?我看了描述功能,但我不确定,所以我想在这里问他们。
我正在从Stata过渡到R,所以如果能得到任何帮助,我将不胜感激。我还查看了SO上的其他帖子,但是大多数帖子都在处理使用group_by时的排序。
由于
答案 0 :(得分:3)
您可以使用lapply
循环访问数据,计算统计数据,将它们放入数据框然后再绑定它们,排序部分可以使用{{1}中的arrange
函数完成}}:
dplyr