【发布时间】:2016-06-22 22:16:43
【问题描述】:
我在 R 中有两个日期,我想在它们之间创建一个日期向量,间隔为一个月。但是,R 似乎改为使用 31 天的间隔(有时?)。例如:
x <- as.Date("31-01-1900", "%d-%m-%Y")
y <- as.Date("31-01-1901", "%d-%m-%Y")
seq(x, y, by="month")
[1] "1900-01-31" "1900-03-03" "1900-03-31" "1900-05-01" "1900-05-31"
[6] "1900-07-01" "1900-07-31" "1900-08-31" "1900-10-01" "1900-10-31"
[11] "1900-12-01" "1900-12-31" "1901-01-31"
我想要的是一个日期向量,每个日期都是每个月的最后一天,如下所示:
[1] "1900-01-31" "1900-02-29" "1900-03-31" "1900-04-30" "1900-05-31"
[6] "1900-06-30" "1900-07-31" "1900-08-31" "1900-09-30" "1900-10-31"
[11] "1900-11-30" "1900-12-31" "1901-01-31"
R 是否知道月份的长度,还是我必须手动完成?
【问题讨论】:
-
您可以查看
lubridate包,但这是 ?seq.POSIXt 的摘录:“使用“月”首先将月份提前而不更改日期:如果这导致当月无效日,顺延至下月。”所以看起来这在这些函数中是固定的。