我正在将Excel中手动输入的日期读取到R中。由于手动输入的性质,日期列中不可避免地存在一些不同的日期类型。
有时,日期被输入为:";2021年4月22日";或";2021年8月31日";。当我用read_excel读入R时,它翻译为:";2021-04-22 UTC";以及";2021-08-31 UTC";。
但是在具有数字Excel日期格式的同一列中还有其他日期;44582〃;或";44603";。
我正在遍历excel文件,由于数据类型不同,无法绑定它们。
有没有办法使这些日期标准化?
当前数据:
date
2021-04-22 UTC
2021-08-31 UTC
44582
44603
期望输出:
date
2021-04-22
2021-08-31
2022-01-21
2022-02-11
我们可以使用
library(dplyr)
df1 %>%
mutate(date = case_when(is.na(as.numeric(date)) ~ as.Date(date),
TRUE ~ as.Date(as.numeric(date), origin = "1899-12-30")))
数据
df1 <- structure(list(date = c("2021-04-22 UTC", "2021-08-31 UTC", "44582",
"44603")), class = "data.frame", row.names = c(NA, -4L))