从字符“11JAN2016:00:00:00.000”转换日期格式

Convert Date Format from character "11JAN2016:00:00:00.000"

我希望将此字符向量转换为日期格式

我尝试了各种方法,但至今没有成功。非常感谢任何帮助!

有关格式的详细信息,请参阅 ?strptime

as.Date(x, "%d%b%Y:%H:%M:%S")
#[1] "2016-01-11"

或者如果您想要日期时间格式

as.POSIXct(x, format = "%d%b%Y:%H:%M:%S")
#[1] "2016-01-11 GMT"

lubridate

library(lubridate)
dmy_hms(x)
#[1] "2016-01-11 UTC"

如果你只想要日期

ymd(dmy_hms(x))
#[1] "2016-01-11"

数据

x <- "11JAN2016:00:00:00.000"

一个选项是 anydate 来自 anytime

library(anytime)
anydate(data)
#[1] "2016-01-11"

数据

data <- "11JAN2016:00:00:00.000"