我有一个看起来像这样的数据框:
df<-data.frame(id=c("xx33","xx33","xx22","xx11","xx11","xx00"),amount=c(10,15,100,20,10,15),date=c("01/02/2013","01/02/2013","02/02/2013","03/03/2013","03/03/2013","04/04/2013"))
id amount date
1 xx33 10 01/02/2013
2 xx33 15 01/02/2013
3 xx22 100 02/02/2013
4 xx11 20 03/03/2013
5 xx11 10 03/03/2013
6 xx00 15 04/04/2013
我想编译所有常见的 ID 并将数量和 id 的出现次数相加,但还要携带公共信息,例如每个 id 相同的日期(以及任何其他变量)。所以,我希望输出是:
id sum date number
1 xx33 25 01/02/2013 2
2 xx22 100 02/02/2013 1
3 xx11 30 03/03/2013 2
4 xx00 15 04/04/2013 1
我试过了
ddply(.data = df, .var = "id", .fun = nrow)
并返回出现的总数,但我无法找到一种方法来总结所有常见的 id 而无需循环。