通常,我使用chron来表示日期/时间对象。但是,我需要使用一些与POSIX格式一起使用的函数,所以我试图从chron转到POSIXct。使用as.POSIXct()似乎可以工作,但结果是在本地时间而不是GMT(原始数据在GMT中)。
x <- chron(dates="05/12/15", times="12:30:45")
as.POSIXct(x, tz="GMT")
"2015-05-12 13:30:45 BST"
我想要的是:
"2015-05-12 12:30:45 GMT"
但我无法找到获得它的方法。
strptime()不起作用,因为原始输入不是字符串,而是chron对象。当然,我可以从一个chron对象转到一个字符串然后转到POSIXct,但这似乎有点令人费解。
我想我可以强制我的R会话使用GMT和Sys.timezone(),但我不愿意。还有其他建议吗?谢谢。
答案 0 :(得分:5)
试试吧:
x <- chron(dates="05/12/15", times="12:30:45")
y<-as.POSIXct(x)
attr(y,"tzone")<-"GMT"
y
#[1] "2015-05-12 12:30:45 GMT"