с использованием ddply
Мне нужно использовать group by на уровнях с ddply или aggregate, если этопроще Я не совсем уверен, как это сделать, так как мне нужно использовать cumsum в качестве агрегатной функции. Вот как выглядят мои данные:
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
ожидаемый результат:
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
Я пытался с помощью
ddply(dd,c("level1","level2","hour"),summarise,cumsum(product))
но это неПодводя итог, я думаю, это потому, что столбец часов используется для группы и разделен на это ... Я думаю ... Я не уверен, что полностью понимаю, как работает агрегат. Есть ли способ, которым я мог бы получить требуемый вывод, используя агрегат или ddply?