2012-07-21 86 views
1

我有以下的數據幀:如何將數字轉換爲R中的日期?

id<-c(1,2,3,4) 
date<-c(19970807,19970902,19971010,19970715) 
df<-data.frame(id,date) 

在其值在日期欄的類型是「NUM」。現在我需要將日期列中的值轉換爲'日期'類型爲'yyyy-mm-dd'。加載'動物園'圖書館後,我嘗試了as.date,但它導致了一些不可接受的結果。 如果有人能幫助我,我會很感激。

回答

2

也許你錯過了as.character()。在基礎R:

as.Date(as.character(date), format = "%Y%m%d") 
[1] "1997-08-07" "1997-09-02" "1997-10-10" "1997-07-15" 
3

你可以這樣做:

library(lubridate) 
df <- data.frame(id, ymd(date)) 
3

只要是完整的,也有使用strptime第三種可能性:

strptime(date,format="%Y%m%d") 
[1] "1997-08-07" "1997-09-02" "1997-10-10" "1997-07-15"