R 管理POSIXct的多种日期格式

R 管理POSIXct的多种日期格式,r,lubridate,R,Lubridate,我有两个具有两种不同日期格式的数据帧:第一个是“%d/%m/%Y%H:%m:%S”,第二个是“%Y-%m-%d%H:%m:%S” 我想创建一个函数,通过指示格式来转换为POSIXct 我的代码: date_func <- function(df){ colnum <- grep("DATE", colnames(df)) df[, (colnum) := lapply(.SD, dmy_hms), .SDcols = colnum] return(df) } date\u f

我有两个具有两种不同日期格式的数据帧:第一个是“%d/%m/%Y%H:%m:%S”,第二个是“%Y-%m-%d%H:%m:%S”

我想创建一个函数,通过指示格式来转换为POSIXct

我的代码:

date_func <- function(df){
 colnum <- grep("DATE", colnames(df))
 df[, (colnum) := lapply(.SD, dmy_hms), .SDcols = colnum]
 return(df)
}

date\u funcPackage
lubridate
提供了以异构格式处理日期/时间的非常好的选项。可以使用
parse\u date\u time
。以OP中指定的格式转换日期/时间的简单示例如下:

library(lubridate)
>parse_date_time(c("01/12/2016 01:11:54", "2015-12-31 10:05:11"), c("dmY HMS", "Ymd HMS"))
# [1] "2016-12-01 01:11:54 UTC" "2015-12-31 10:05:11 UTC"

我想你应该找润滑油包装。可以用异构格式解析数据。