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

时间:2015-12-03 15:28:15

标签: r

我使用R并希望构建一个日期向量,包括每月的第1和第15个,用作图中x轴的断点。

有很多方法可以做到这一点,但我试图找到最优雅,最直接的方法。

2 个答案:

答案 0 :(得分:0)

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

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)
}

答案 1 :(得分:0)

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"