This has been asked several times with no clear answer: I would like to convert an R character string of the form \"YYYY-mm-dd\" into a Date. The as.Date<
The function parse_date_time from the 'lubridate' package is quite fast too:
library(date)
library(lubridate)
set.seed(21)
x <- as.character(Sys.Date()-sample(40000, 1e6, TRUE))
system.time(date1 <- as.Date(x))
# user system elapsed
# 12.86 0.00 12.94
system.time(date2 <- as.Date(as.date(x,"ymd"))) # from package 'date'
# user system elapsed
# 4.82 0.00 4.85
system.time(date3 <- as.Date(parse_date_time(x,'%y-%m-%d'))) # from package 'lubridate'
# user system elapsed
# 0.27 0.00 0.26
all(date1 == date2)
# TRUE
all(date1 == date3)
# TRUE