2017-10-05 65 views
-2

什麼是最優雅的方式來轉換這些例子可以追溯到數字日期:將寫於數字日期中的R

dates <- c("April 1, 2017", "June 27, 2017", "September 24, 2017") 

我想這是一個結果:

"01-04-2017", "27-06-2017", "24-09-2017" 

回答

3

使用base

as.Date(dates, format = "%B %d, %Y") 
[1] "2017-04-01" "2017-06-27" "2017-09-24" 

,然後格式化

format(as.Date(dates, format = "%B %d, %Y"), "%d-%m-%Y") 
[1] "01-04-2017" "27-06-2017" "24-09-2017" 
2

你可以使用mdy功能lubridate包解析日期。然後使用format將其轉換爲所需的形式。

library(lubridate) 
format(mdy(dates), "%d-%m-%Y") 
#[1] "01-04-2017" "27-06-2017" "24-09-2017"