cumsum usando ddply
Eu preciso usar o grupo por níveis com ddply ou agregado, se isso é mais fácil. Não tenho certeza de como fazer isso, pois preciso usar o cumsum como minha função agregada. É assim que meus dados se parecem:
level1 level2 hour product
A tea 0 7
A tea 1 2
A tea 2 9
A coffee 17 7
A coffee 18 2
A coffee 20 4
B coffee 0 2
B coffee 1 3
B coffee 2 4
B tea 21 3
B tea 22 1
saída esperada:
A tea 0 7
A tea 1 9
A tea 2 18
A coffee 17 7
A coffee 18 9
A coffee 20 13
B coffee 0 2
B coffee 1 5
B coffee 2 9
B tea 21 3
B tea 22 4
Eu tentei usar
ddply(dd,c("level1","level2","hour"),summarise,cumsum(product))
mas isso não resume o que eu acho que é porque a coluna hora está sendo usada para group by e está sendo dividida por isso ... eu acho .. Eu não tenho certeza se entendi completamente como o agregado funciona aqui. Existe alguma maneira que eu poderia obter o resultado desejado usando agregado ou ddply?