我有一个未转换为实际日期的字符串日期列表

I have a list of string dates not being converted into real dates

我有一个看起来像这样的数据集

   structure(list(date_mm_dd_yy = c("1/21/2021", "1/21/2021", "1/25/2021", 
"2/2/2021", "2/16/2021", "3/7/2021", "4/1/2021", "4/14/2021", 
"4/19/2021", "4/24/2021")), row.names = c(NA, 10L), class = "data.frame")

当我运行

dmy(Yes$date_mm_dd_yy) 

as.Date(Yes$date_mm_dd_yy, format = "%d/%m/%y")

我只得到了一些填写的日期,但我得到了 7 个 NA。我不明白有的通过了,有的没有通过有什么区别。

structure(c(NA, NA, NA, 18294, NA, 18446, 18265, NA, NA, NA), class = "Date")

尝试

library(anytime)
anydate(Yes$date_mm_dd_yy)

你也说你有

as.Date(SRM_LATEST$date_mm_dd_yy, format = "%d/%m/%y")

不应该是

as.Date(SRM_LATEST$date_mm_dd_yy, format = "%m/%d/%y")

您的日期采用月-日-年格式,但您 as.Date() 的格式参数是日-月-年。

这对我有用:

as.Date(Yes$date_mm_dd_yy, format = "%m/%d/%y")

选项lubridate

library(lubridate)
Yes$date_mm_dd_yy <- mdy(Yes$date_mm_dd_yy)

-输出

> Yes
   date_mm_dd_yy
1     2021-01-21
2     2021-01-21
3     2021-01-25
4     2021-02-02
5     2021-02-16
6     2021-03-07
7     2021-04-01
8     2021-04-14
9     2021-04-19
10    2021-04-24