2012-10-12 106 views
5

在data.frame,我在表格的日期時間戳:字符轉換迄今爲止時間

head(x$time) 
[1] "Thu Oct 11 22:18:02 2012" "Thu Oct 11 22:50:15 2012" "Thu Oct 11 22:54:17 2012" 
[4] "Thu Oct 11 22:43:13 2012" "Thu Oct 11 22:41:18 2012" "Thu Oct 11 22:15:19 2012" 

每次我試圖把它與as.Date轉換,lubridate,或動物園我得到NA s或錯誤。

將此時間轉換爲可讀形式的方式是什麼?

我已經試過:

Time<-strptime(x$time,format="&m/%d/%Y %H:$M") 
    x$minute<-parse_date_time(x$time) 
    x$minute<-mdy(x$time) 
    x$minute<-as.Date(x$time,"%m/%d/%Y %H:%M:%S") 
    x$minute<-as.time(x$time) 
    x$minute<-as.POSIXct(x$time,format="%H:%M") 
    x$minute<-minute(x$time) 
+4

你能分享一些你試過的步驟?另外,請注意'as.date'與'as.Date'不一樣。 – A5C1D2H2I1M1N2O1R2T1

+4

你有什麼嘗試?看看'格式'參數的'strptime'提供給'as.Date'和其他。 – Justin

回答

17

你真正想要的是strptime()。嘗試是這樣的:

strptime(x$time, "%a %b %d %H:%M:%S %Y") 

隨着有趣的東西,你可以用strptime()做到一個例子,考慮以下因素:

thedate <- "I came to your house at 11:45 on January 21, 2012." 
strptime(thedate, "I came to your house at %H:%M on %B %d, %Y.") 
# [1] "2012-01-21 11:45:00"