如何使用reshape / plyr汇总数据?

时间:2010-10-08 18:00:10

标签: r plyr reshape

我的数据如下:

                   model                aspect cover contour
1                        flowering ~ 1      2    52    2400
2   flowering ~ 1 + temp + precip:temp      1    52    2390
3        flowering ~ 1 + temp + precip      1    52    2390
4        flowering ~ 1 + temp + precip      1    52    2390
5 flowering ~ 1 + precip + precip:temp      1    52    2400
6 flowering ~ 1 + precip + precip:temp      1    52    2400

此数据集中有40,000行,包含54个独特模型。

如何获得汇总数据集,显示每个模型在纵横x轮廓x覆盖组合中出现的次数?

2 个答案:

答案 0 :(得分:11)

plyr为这种特殊情况提供了优化的功能:

comboCount <- count(myData, c("model","aspect","cover","contour"))

答案 1 :(得分:3)

试试这个(假设您的数据位于名为myData的数据框中):

comboCount <- ddply(myData, c("model","aspect","cover","contour") function(df) nrow(df))