我对这个结果感到困惑:
a = "2008-03-03 12:30:38"
#I convert to POSIXct and set the timezone
dt = as.POSIXct(a, format="%Y-%m-%d %H:%M:%S", tz='Europe/Paris')
dt
[1] "2008-03-03 12:30:38 CET"
unclass(dt)
[1] 1204543838
attr(,"tzone")
[1] "Europe/Paris"
#I want to come back to POSIXct
as.POSIXct(unclass(dt), origin='1970-01-01', tz='Europe/Paris')
[1] "2008-03-03 11:30:38 CET"
我原本期望回到日期时间a
,这里有什么问题?
答案 0 :(得分:2)
正如?as.POSIXct
中所述,原点位于tz="GMT"
。
您可以改为使用.POSIXct
:
.POSIXct(unclass(dt), tz='Europe/Paris')
# [1] "2008-03-03 12:30:38 CET"
答案 1 :(得分:0)
您可能想要检查属性: isdst 要查看某处是否有某些夏令时转换。 此页面from the R manual on Date-Time Classes可能有用