【发布时间】:2020-04-03 13:39:33
【问题描述】:
我需要绘制一个帐户余额的预测,但我正在努力使用 dplyr 计算每日余额。不起作用的是这种使用 dplyr::lag 的方法,因为 lag 看不到变异值:
my_balance <- 100
df <- data.frame(day = 1:10, cost = c(-20,-30,-10,-30,-40,-20,-30,-35,-10,-12), revenue = c(100,20,0,12,7,100,20,30,15,12))
df %>%
mutate(balance = lag(balance, default = my_balance) + cost + revenue)
结果:
day cost revenue balance
1 1 -20 100 180
2 2 -30 20 90
3 3 -10 0 90
4 4 -30 12 82
5 5 -40 7 67
6 6 -20 100 180
7 7 -30 20 90
8 8 -35 30 95
9 9 -10 15 105
10 10 -12 12 100
预期结果:
day cost revenue balance
1 1 -20 100 180
2 2 -30 20 170
3 3 -10 0 160
4 4 -30 12 142
5 5 -40 7 109
6 6 -20 100 189
7 7 -30 20 179
8 8 -35 30 174
9 9 -10 15 179
10 10 -12 12 179
我可以使用什么来使用之前计算的总和创建每行的余额?
【问题讨论】: