如何使用lubridate将R中的多个列转换为日期格式?

如何使用lubridate将R中的多个列转换为日期格式?,r,lubridate,R,Lubridate,我有一个数据库,其中有多列日期作为字符类。我想使用R中的lubridate包一次性转换它们。我在解析日期格式时没有遇到问题,但是在多个列上应用lubridate时遇到了问题。有什么建议吗 crimes.df <- data.frame(offense.date = c('06102003', '05122006'), charge.date = c('07152003', '10012010')) (而且,不方便的是,删除列中的所有数据。)使用lappy,我们正在循环数据集的列,函数md

我有一个数据库,其中有多列日期作为字符类。我想使用R中的lubridate包一次性转换它们。我在解析日期格式时没有遇到问题,但是在多个列上应用lubridate时遇到了问题。有什么建议吗

crimes.df <- data.frame(offense.date = c('06102003', '05122006'), charge.date = c('07152003', '10012010'))

(而且,不方便的是,删除列中的所有数据。)

使用
lappy
,我们正在循环数据集的列,函数
mdy
应用于每个

crimes.df[] <- lapply(crimes.df, mdy)

另外,请注意,由于只有两列,因此不需要指定
crimes.df[,1:2]

我无意中找到了一个解决方案,但您的解决方案要优雅得多。我做到了:gcm.日期[,2:12]
crimes.df[,1:2]<-lapply(crimes.df[,1:2], function(x) mdy(crimes.df[,1:2]))
Warning message:
All formats failed to parse. No formats found. 
crimes.df[] <- lapply(crimes.df, mdy)
crimes.df[] <- lapply(crimes.df, function(x) mdy(x))