2017-05-30 35 views
0

我想將使用read.table從csv文件中讀取的日期向量轉換。這些被讀作字符串的矢量。我正在嘗試使用as_date將其轉換爲日期向量。帶時區的字符串轉換爲日期

日期矢量有以下類型

dateString 
"Wed Dec 11 00:00:00 ICT 2013" 

的元素在嘗試使用下面的命令來進行轉換,

as.Date(dateString,"%a %b %e %H:%M:%S %Z %Y") 
Error in strptime(x, format, tz = "GMT") : 
    use of %Z for input is not supported 

是什麼正確的格式在strptime中使用?或在as.Date?

+0

時區應該被刪除。您可以將其存儲在單獨的列中。 – Masoud

回答

2

只需使用anytime()函數從anytime包:

R> anytime::anytime("Wed Dec 11 00:00:00 ICT 2013") 
[1] "2013-12-11 CST" 
R> 

還有一個utctime()變種不徵收當地的時間等等。現在我們在這裏也有很多問題,所以只是搜索。

如果你想有一個日期,它的工作方式相同:

R> anytime::anydate("Wed Dec 11 00:00:00 ICT 2013") 
[1] "2013-12-11" 
R> 
+1

時間序列和時區,時間等。是你的理由。 +1刪除了我的答案。 – Masoud

+0

@Dirk - 完美地工作。謝謝喲。如果我需要爲具有大約1800萬個條目的矢量(源csv文件非常大)執行此操作,有沒有更快的方法來執行此轉換? – finraj

相關問題