【发布时间】:2014-07-22 21:43:58
【问题描述】:
我尝试使用 strftime 函数从我的时间戳中生成可读字符串。我的问题是每次我尝试执行转换时都会消失一个小时。
我在比利时,现在是夏天,所以我的 linux 设置为 GMT+2
jt@jt-roxane:~$ date
lundi 2 juin 2014, 19:18:48 (UTC+0200)
jt@jt-roxane:~$ R
R version 2.14.1 (2011-12-22)
> Sys.time()
[1] "2014-06-02 19:19:46 CEST"
当我的朋友尝试转换时间戳 1401729132 时,它会正确转换为
as.POSIXct(1401729132, origin="1970-01-01")
"2014-06-02 19:12:12 CEST"
但是当我尝试这样做时,答案是
> as.POSIXct(1401729132, origin="1970-01-01")
[1] "2014-06-02 18:12:12 CEST"
我尝试设置正确的时区,但似乎无法解决问题。
> strftime(as.POSIXct(1401729132, origin="1970-01-01"), '%H:%M:%S', tz="UTC-2")
[1] "18:12:12"
你知道它的来源吗?
感谢您的帮助!
编辑:
我已经尝试在 as.POSIXct() 中设置正确的 TZ - 该行给出了错误的答案:
> as.POSIXct(1401729132, origin="1970-01-01", tz="GMT")
[1] "2014-06-02 17:12:12 GMT"
【问题讨论】: