为轴中断构建每个月1日和15日的日期向量

  • 本文关键字:15日 日期 向量 1日 中断 构建 r
  • 更新时间 :
  • 英文 :


我正在使用R,并希望构建一个日期向量,由每个月的1日和15日组成,用作图中沿x轴的分隔符。

有很多方法可以做到这一点,但我正在努力寻找最优雅、最直接的方法。

我自己的解决方案是创建一个完整的日期向量,然后通过检查日期来丢弃我不需要的日期。

library(lubridate)
library(magrittr)
myDateBreaks = function(start, end, days=c(1, 15){
    dateBreaks = seq(as.Date(start), as.Date(end), by="1 day")
    dateBreaks %<>% .[day(dateBreaks) %in% days]
    return(dateBreaks)
}
x <- seq(as.Date("2015-01-01"), as.Date("2015-12-31"), by = "month")
rep(x, each = 2) + rep(c(0, 14), length(x))
 #[1] "2015-01-01" "2015-01-15" "2015-02-01" "2015-02-15" "2015-03-01" "2015-03-15" "2015-04-01" "2015-04-15" "2015-05-01" "2015-05-15" "2015-06-01" "2015-06-15"
#[13] "2015-07-01" "2015-07-15" "2015-08-01" "2015-08-15" "2015-09-01" "2015-09-15" "2015-10-01" "2015-10-15" "2015-11-01" "2015-11-15" "2015-12-01" "2015-12-15"

相关内容

最新更新