doBy()包中的函数先将数据分组,然后再施加特定运算,我们可以使用aggregate()函数进行更为便利的分组运算
例如,我们计算鸢尾花品种的Sepal.Width平均值
> aggregate(Sepal.Width~Species,iris,mean)
Species Sepal.Width
1 setosa 3.428
2 versicolor 2.770
3 virginica 2.974
当然,我们也可以使用tapply()函数计算平均值
> tapply(iris$Sepal.Width,iris$Species,mean)
setosa versicolor virginica
3.428 2.770 2.974
不过相对tapply()函数来说,aggregate()函数会更简单