我正在尝试对我的示例数据(调用 Z)使用 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
我的目的是找到从 1 开始的 id 的 y 的总和(即 1001,1200,..), 2(2100), 3(3100,3190), 4,...10,11,...65 . 例如 id 以 1 开头,总和为 10+11+12=33,对于 id 以 2 开头,则为 32。
我想使用如下所示的 apply 函数:
>s <- split(z,z$id)
>lapply(s, function(x) colSums(x[, c("y")]))
但是,这给了我每个唯一 ID 的总和,而不是我正在寻找的那个。在这方面的任何建议将不胜感激。