2015-10-21 142 views
1

通常,我使用chron來表示日期/時間對象。但是,我需要使用一些與POSIX格式配合使用的功能,所以我正試圖從chron轉到POSIXct。使用as.POSIXct()似乎可行,但結果是在本地時間而不是GMT(原始數據在GMT)。格林威治標準時間格式轉換爲POSIXct

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(),但我不想。任何其他建議?謝謝。

回答

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" 
+0

似乎工作。謝謝! – rs028

相關問題