【发布时间】:2015-05-29 17:33:54
【问题描述】:
这就是我的数据的样子。最右边的列是我的 Desired Column。
Name EventType EventDate SalesAmount RunningTotal Runningtotal(prior365Days)
John Email 1/1/2014 0 0 0
John Sale 2/1/2014 10 10 10
John Sale 7/1/2014 20 30 30
John Sale 4/1/2015 30 60 50
John Webinar 5/1/2015 0 60 50
Tom Email 1/1/2014 0 0 0
Tom Sale 2/1/2014 15 15 15
Tom Sale 7/1/2014 10 25 25
Tom Sale 4/1/2015 25 50 35
Tom Webinar 5/1/2015 0 50 35
我只是想获取过去 365 天窗口中每个名称的销售总额。对于我使用的一般“RunningTotal”列:
df<- df%>%
group_by (Name)%>%
mutate(RunningTotal = cumsum(SalesAmount))
但我不知道如何仅在过去 365 天的窗口中获取运行总数。请帮助。衷心感谢您的帮助!
【问题讨论】:
-
这个 dplyr 小插图看起来是一个很好的起点cran.r-project.org/web/packages/dplyr/vignettes/… dplyr 和 data.table 都没有提供用于有效滚动窗口计算的特殊工具。 (例如,2012 年 data.table 的作者:stackoverflow.com/a/12157723/1191259)
-
@Frank 谢谢!这很有帮助。
标签: r data.table dplyr zoo