我有一组事件,每个事件都有开始日期和结束日期,但它们发生的时间跨度为几个月。我想创建一个表格来显示每个月此事件的天数。
我有下面的例子。
event_start_date <- as.Date("23/10/2012", "%d/%m/%Y")
event_end_date <- as.Date("07/02/2013", "%d/%m/%Y")
我希望得到如下表格:
Oct-12 8
Nov-12 30
Dec-12 31
Jan-13 31
Feb-13 7
有谁知道一种聪明而优雅的方法来做到这一点,或者创建循环系统是唯一可行的方法?
Jochem
这不一定有效,因为它创建了一系列日期,但它完成了工作:
> library(zoo)
> table(as.yearmon(seq(event_start_date, event_end_date, "day")))
Oct 2012 Nov 2012 Dec 2012 Jan 2013 Feb 2013
9 30 31 31 7
如果您的时间跨度太大,而此方法速度较慢,则必须创建两个(截断的)日期之间的月份的第一个序列,取diff
,并为端点做一些额外的工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)