我尝试使用cumsum
,plyr
' s ddply
来获得总计。但是,我只是不明白为什么这不起作用。
n = c(2, 3, 5)
s = c("aa", "bb", "cc")
dd = data.frame(n, s)
# n s
# 1 2 aa
# 2 3 bb
# 3 5 cc
test <-ddply(dd, "n", transform, ttl = cumsum(n))
# n s ttl
# 1 2 aa 2
# 2 3 bb 3
# 3 5 cc 5
我期望ttl
应该是:
# 2
# 5
# 10
如果有人能解释我在这里做错了什么以及如何获得理想的结果,那就太棒了。感谢。
答案 0 :(得分:1)
正如评论中所提到的,ddply完全正常。
但是我认为你想要的是n的累积和。所以使用这个(也更简单的)代码:
dd$ttl <- cumsum(dd$n)