在 R 中设置类型日期,格式为 '05-Mar-2020 17:00:00'
Setting type date in R with format '05-Mar-2020 17:00:00'
我有大量数据,有 18000 行。其中一列是日期和时间的组合。在 csv 文件中,格式为“05/03/2020 05:00:00 PM”。当我将 csv 读入 R 时,它变成格式为“05-Mar-2020 17:00:00”的字符。我需要 R 才能将此列理解为日期和时间。
我尝试了以下方法,它只是用 NA 替换了 DateTimes。
'dat' 是数据框,'DateTime' 是列名。
dat[['DateTime']] <- as.POSIXct(dat[['DateTime']], format = "%d%-%m-%Y %H:%M:%S")
x <- "05-Mar-2020 17:00:00"
as.POSIXct(x, format = "%d-%b-%Y %H:%M:%S")
# [1] "2020-03-05 17:00:00 CET"
使用 help(strptime)
查看所有格式代码,您会看到 %b 用于缩写月份名称而不是 %m 并且您还有一个多余的 % 符号。
或者您可以使用 lubridate 包并执行以下操作:
lubridate::dmy_hms(x)
我有大量数据,有 18000 行。其中一列是日期和时间的组合。在 csv 文件中,格式为“05/03/2020 05:00:00 PM”。当我将 csv 读入 R 时,它变成格式为“05-Mar-2020 17:00:00”的字符。我需要 R 才能将此列理解为日期和时间。
我尝试了以下方法,它只是用 NA 替换了 DateTimes。 'dat' 是数据框,'DateTime' 是列名。
dat[['DateTime']] <- as.POSIXct(dat[['DateTime']], format = "%d%-%m-%Y %H:%M:%S")
x <- "05-Mar-2020 17:00:00"
as.POSIXct(x, format = "%d-%b-%Y %H:%M:%S")
# [1] "2020-03-05 17:00:00 CET"
使用 help(strptime)
查看所有格式代码,您会看到 %b 用于缩写月份名称而不是 %m 并且您还有一个多余的 % 符号。
或者您可以使用 lubridate 包并执行以下操作:
lubridate::dmy_hms(x)