如何将格式为 dd-mm-yyyy hh:mm 的日期转换为 R 中的 yyyy-mm-dd

How to convert a date in the format dd-mm-yyyy hh:mm into yyyy-mm-dd in R

我想将“28-03-2020 00:00”之类的 date/time 转换为“2020-03-28”之类的日期。 我尝试了 lubridate 使用

dmy_hm("28-03-2020 00:00")

和R基

as.Date(as.character("28-03-2020 00:00"), format = "%d-%m-%Y hh:mm")

都没有成功。

我们需要在 as.Date 中使用正确的格式(检查 ?strptime

as.Date("28-03-2020 00:00", format = "%d-%m-%Y %H:%M")
#Actually, this works as well
#as.Date("28-03-2020 00:00", format = "%d-%m-%Y")
#[1] "2020-03-28"

而对于 lubridate 我们可以换行 as.Date 来获取日期。

as.Date(lubridate::dmy_hm("28-03-2020 00:00"))

我们可以使用anytime

library(anytime)
anytime("28-03-2020 00:00")
#[1] "2020-03-28 EDT"

如果格式不存在,使用addFormats

addFormats("%d-%m-%Y %H:%M")