在R中组合日期向量之后日期发生变化

时间:2016-04-25 22:52:22

标签: r date vector lubridate

我正在尝试将两个日期向量组合成一个向量。我一直在使用带有润滑剂包的日期。

首先,我创建了两个日期向量:

library(lubridate)

mydate <- mdy("04/01/2016")
mydate_range <- mydate + (1:12)*months(1)

anotherdate_range <- mdy("05/01/2017") + (1:12)*months(1)

检查mydate_range和anotherdate_range这些似乎运行正常。

但是当我尝试将这些组合成一个向量时,事情变得奇怪。

combineddates <- c(mydate_range, anotherdate_range)
combineddates
[1] "2016-04-30 19:00:00 CDT" "2016-05-31 19:00:00 CDT" "2016-06-30 19:00:00 CDT"

合并日期的第一个日期现在是“2016-04-30”。在我使用c()函数组合它们之前,mydate_range的第一个日期是“2016-05-01”。

不确定为什么会改变。我该如何加入这些日期向量?

1 个答案:

答案 0 :(得分:1)

日期更改的原因是由于时区调整而导致的转化。 2016-04-30 19:00:00 CDT与2016-05-01 GMT相同。很可能你的初始序列是在格林尼治标准时间以及它转换为当地时间的某个地方。 我发现最好在初始定义中定义时区,并且它应始终保持一致。