无法将数据集解析为日期格式

时间:2020-11-10 00:50:58

标签: r lubridate

我目前正在尝试将3个不同的数据集转换为日期格式,然后再尝试将它们合并。前两个我使用lubridate解析日期列没有问题

COVID19$Date <- lubridate::ymd(COVID19$Date)
TESTS$Date <- lubridate::ymd(TESTS$Date) 

但是,当我使用相同的lubridate函数的第三个数据集时,我收到以下警告

RECOVERED_tidy <- lubridate::ymd(RECOVERED_tidy$Date)
Warning message:
All formats failed to parse. No formats found. 

此数据集之前已整理过,因此使用以下命令将所有日期列合并为一列:

RECOVERED_tidy <- pivot_longer(RECOVERED, starts_with("X"), names_to = "date", values_to = "recovered")

这就是为什么它不使用相同的功能吗?

感谢您的帮助!

编辑:

恢复的数据示例

 Country     Date        Recovered
  <fct>       <chr>           <int>
1 Afghanistan X2020.01.22         0
2 Afghanistan X2020.01.23         0
3 Afghanistan X2020.01.24         0
4 Afghanistan X2020.01.25         0
5 Afghanistan X2020.01.26         0
6 Afghanistan X2020.01.27         0

1 个答案:

答案 0 :(得分:0)

删除数据中存在的其他'X',您可以使用sub来完成。

RECOVERED_tidy$Date <- lubridate::ymd(sub('X', '', RECOVERED_tidy$Date))

您还可以在底数R中使用as.Date

RECOVERED_tidy$Date <- as.Date(RECOVERED_tidy$Date, 'X%Y.%m.%d')
相关问题