【发布时间】:2018-08-23 09:17:25
【问题描述】:
我正在尝试使用每个客户的剧集具有开始和结束日期的数据来获取每月活跃客户的数量。我正在使用的代码无法计算出如何计算每月,而不是每 n 天。
这是一些示例数据:
Start.Date <- as.Date(c("2014-01-01", "2014-01-02","2014-01-03","2014-01-03"))
End.Date<- as.Date(c("2014-01-04", "2014-01-03","2014-01-03","2014-01-04"))
确保日期是日期:
Start.Date <- as.Date(Start.Date, "%d/%m/%Y")
End.Date <- as.Date(End.Date, "%d/%m/%Y")
这是我正在使用的代码,当前计算每天的数量:
library(plyr)
count(Reduce(c, Map(seq, start.month, end.month, by = 1)))
返回:
x freq
1 2014-01-01 1
2 2014-01-02 2
3 2014-01-03 4
4 2014-01-04 2
“by”参数可以更改为我想要的任何天数,但是由于月份的长度不同,因此会出现问题。
谁能建议我如何计算每个月?
非常感谢。
注意:我现在意识到,对于我的示例数据,我只使用了同一个月的日期,但我的真实数据的日期跨度为 3 年。
【问题讨论】:
-
尝试通过
lubridate包。有几个处理日期/时间类的函数