为什么lubridate似乎会将两个日期的时区更改为一个向量?

时间:2016-03-31 13:07:46

标签: r lubridate

在R中使用lubridate包时,我看到了意想不到的结果。我只是想将两个日期组合成一个向量。当我这样做时,时区会改变。这里发生了什么?

> x <- ymd("2016-02-08")
> y <- ymd("2016-03-29")
> x
[1] "2016-02-08 UTC"
> y
[1] "2016-03-29 UTC"
> c(x,y)
[1] "2016-02-07 18:00:00 CST" "2016-03-28 19:00:00 CDT"

1 个答案:

答案 0 :(得分:2)

使用c()将删除时区属性。因此你必须重新分配它:

xy <- c(x,y)
attr(xy, "tzone") <- "UTC"
> xy
[1] "2016-02-08 UTC" "2016-03-29 UTC"

来源和更多信息:Peter Ehlers on R Help