在比较多组个体或观测时,关注的焦点经常是各组的描述性统计信息,而不是样本整体的描
述性统计信息。同样地,在R中完成这个任务有若干种方法。我们将以获取变速箱类型各水平的
描述性统计量开始。
vars
> aggregate(mtcars[vars],by=list(am=mtcars$am),median)
am mpg hp wt
1 0 17.3 175 3.52
2 1 22.8 109 2.32
注意list(am=mtcars$am)的使用。如果使用的是list(mtcars$am),则am列将被标注为
Group.1而不是am。你使用这个赋值指定了一个更有帮助的列标签。如果有多个分组变量,可以
使用by=list(name1=groupvar1, name2=groupvar2, ... , groupvarN)这样的语句。
> aggregate(mtcars[vars],by=list(am=mtcars$am,gear=mtcars$gear),median)
am gear mpg hp wt
1 0 3 15.50 180.0 3.730
2 0 4 21.00 109.0 3.315
3 1 4 25.05 79.5 2.260
4 1 5 19.70 175.0 2.770
------------------------------------------------
doBy包和psych包也提供了分组计算描述性统计量的函数。同样地,它们未随基本安装发布,
必须在首次使用前进行安装。doBy包中