我试图ddply使用我的样本数据(称之为Z)看起来像如下:使用lapply和ddply功能
id y
1001 10
1001 11
1200 12
2001 10
2030 12
2100 32
3100 10
3190 13
4100 45
5100 67
5670 56
...
10001 54
10345 45
11234 32
and so on
我的目的是找到y的总和为ID出发1(即1001,1200,...),2(2100),3(3100,3190),4,... 10,11,... 65。例如,对于ID从1开始,总和为10 + 11 + 12 = 33,为ID从2开始,它是32
我想使用应用函数看起来像如下:
>s <- split(z,z$id)
>lapply(s, function(x) colSums(x[, c("y")]))
但是,这给了我每个唯一的ID,而不是我正在寻找的总和。任何有关这方面的建议将不胜感激。
当然对于'2' - '(2001,2030,2100)'的总和将是'10 + 12 + 32 = 54'? – thelatemail
你真的使用'ddply'吗?或者是一个错字? – mnel