对两个月重叠的一周计算每个月的天数

  • 本文关键字:计算 两个月 重叠 一周 r
  • 更新时间 :
  • 英文 :


如果我有一个星期的序列,有人知道用R.计算给定星期每个相应月份的天数的方法吗

所以如果我有一个序列:

week commencing
"2015-04-22" 
"2015-04-29" 
"2015-05-06"

我如何创建以下内容:

week commencing   Days in starting month   Days overlapping
"2015-04-22"       7                         0
"2015-04-29"       3                         4
"2015-05-06"       7                         0

我知道lubridate包有很多有用的相关函数,但我不知道如何应用它们来获得上述结果。

dates<-as.Date(c("2015-04-22","2015-04-29" ,"2015-05-06"))
f<-Vectorize(function(d){
  sum(as.POSIXlt(d+0:6)$mon==as.POSIXlt(d)$mon)  
})

结果:

> data.frame(Start=dates,ThisMonth=f(dates),NextMonth=7-f(dates))
       Start ThisMonth NextMonth
1 2015-04-22         7         0
2 2015-04-29         2         5
3 2015-05-06         7         0

最新更新