首页 文章

将日期转换为POSIXct

提问于
浏览
8

为什么转换为POSIXct时,以下日期会更改为“2014-07-07”?

Sys.setenv(TZ='America/Sao_Paulo')
d <- as.Date("2014-07-08", format="%Y-%m-%d")
d
[1] "2014-07-08"
as.POSIXct(d)
[1] "2014-07-07 21:00:00 BRT"

1 回答

  • 11

    因为如果在 ... 中指定 as.POSIXct.Date 并且't look for a timezone (and won'将它传递给 .POSIXct 并且Date对象是"UTC",所以 POSIXct 偏离Date对象的UTC .

    如果可以的话,最好直接在字符串上调用 as.POSIXct

    > as.POSIXct("2014-07-08", format="%Y-%m-%d")
    [1] "2014-07-08 BRT"
    

相关问题