我有一个与商店购买记录相对应的数据集,它是这样的:
Date BuyId Price Description Category
2010-01-01 101028 100 ... ...
2010-01-01 101028 100 ... ...
2010-01-01 101028 100 ... ...
2010-01-01 101028 100 ... ...
...
Run Code Online (Sandbox Code Playgroud)
数据框中的日期从 2010-01-10 到 2015-04-01,我想每月拆分它,以便我可以绘制每年每月的购买量,我的意思是:
Date Count
2010-Jan 19128
2010-Feb 1232
...
...
2015-Mar 28363
2015-Apr 12834
Run Code Online (Sandbox Code Playgroud)
我一直在为此感到困难,因为我对 R 很陌生,而且我不知道这么多功能。
我试图使用拆分数据,split但我无法做到。有谁知道我该怎么做?
您可以dplyr为此使用:
df %>%
mutate(new.date = cut.Date(as.Date(Date, format = '%Y-%m-%d'), "month")) %>%
group_by(new.date) %>%
summarise(count = n())
Run Code Online (Sandbox Code Playgroud)
mutate将group_by按月创建一个带有切割日期的新列,summarise并将计算条目数。
另外,如果您需要年份和缩写月份,只需再添加一个mutate:
%>%
mutate(new.date = format(as.Date(new.date), "%Y-%b"))
Run Code Online (Sandbox Code Playgroud)