gpt4 book ai didi

r - 当月份是 3 个字符变量时,在 R 中转换为日期的最佳方法?

转载 作者:行者123 更新时间:2023-12-02 19:15:08 25 4
gpt4 key购买 nike

我有一些看起来很奇怪的变量,我需要将其转换为 Date 类:

 dates <- c("  26JUL2018:23:59:59", "  02APR2018:23:59:59", "  02MAY2018:23:59:59", 
" 22APR2018:23:59:59", " 27MAY2018:23:59:59", " 04MAR2018:23:59:59",
" 10APR2018:23:59:59", NA, " 04SEP2018:23:59:59", " 21APR2017:23:59:59"
)

> dates
[1] " 26JUL2018:23:59:59" " 02APR2018:23:59:59" " 02MAY2018:23:59:59"
[4] " 22APR2018:23:59:59" " 27MAY2018:23:59:59" " 04MAR2018:23:59:59"
[7] " 10APR2018:23:59:59" NA " 04SEP2018:23:59:59"
[10] " 21APR2017:23:59:59"

我尝试了以下方法,仅生成 NA:

as.POSIXct(dates, format="  %d%m%Y:%H:%M:%S")
as.POSIXct(dates, format=" %d%mm%Y:%H:%M:%S")

我还尝试使用 gsub 删除空格,然后使用 format="%d%m%Y:%H:%M:%S"format="%d% mm%Y:%H:%M:%S" 但都不起作用。

将此向量格式化为 Date 类的正确方法是什么?

最佳答案

您可以使用 %b 作为此平台当前区域设置中月份的缩写名称。 (还匹配输入的全名:在某些语言环境中没有名称缩写。)

as.POSIXct(dates, format="%d%b%Y:%H:%M:%S")
# [1] "2018-07-26 23:59:59 CEST" "2018-04-02 23:59:59 CEST"
# [3] "2018-05-02 23:59:59 CEST" "2018-04-22 23:59:59 CEST"
# [5] "2018-05-27 23:59:59 CEST" "2018-03-04 23:59:59 CET"
# [7] "2018-04-10 23:59:59 CEST" NA
# [9] "2018-09-04 23:59:59 CEST" "2017-04-21 23:59:59 CEST"

关于r - 当月份是 3 个字符变量时,在 R 中转换为日期的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63810097/

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