gpt4 book ai didi

r - 如何将多种格式的字符串向量转换为 R 中的日期

转载 作者:行者123 更新时间:2023-12-05 09:02:52 25 4
gpt4 key购买 nike

我有一个存储为字符串的日期向量,其中一些是 YYYY-mm-dd 格式,一些是 YYYY-dd-mm 格式。我需要弄清楚如何将这些转换为日期。幸运的是,所有 YYYY-dd-mm 格式的实例都在任何月份的 12 日之后,因此很容易辨认。

尝试过

dates <- c("2017-12-31","2017-12-30","2017-29-12","2017-28-12")
dates <- as.Date(dates, format = c("%Y-%m-%d","%Y-%d-%m"))

返回以下内容:

[1] "2017-12-31" "2017-12-30" NA           NA   

最佳答案

使用 lubridate 中的 parse_date_time 并传递您的日期可以采用的多种格式。

dates <- c("2017-12-31","2017-12-30","2017-29-12","2017-28-12")

as.Date(lubridate::parse_date_time(dates, c('ymd', 'ydm')))
#[1] "2017-12-31" "2017-12-30" "2017-12-29" "2017-12-28"

这与其他答案一样,首先优先考虑 ymd,如果它无法识别日期,然后检查 ydm 格式。

关于r - 如何将多种格式的字符串向量转换为 R 中的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70705061/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com