更改日期时间,例如01JAN20200:13:004:100000



我还没能找到另一个问题,但我觉得有一个问题存在,如果我问了一个重复的问题,很抱歉

我有一个日期-时间列,格式如下(字符(:

date <- "02OCT2019:15:04:34.000000"

我试着用将该列转换为日期

new_date <- as.POSIXct(date, "%d%b%Y:%H:%M:%S%OS")

但它似乎不起作用。我觉得我的问题在于月份,因为它是大写的。我试着只减去日期(%d%b%Y(,然后使用as.POSIXct,得到了同样的错误。

我不知道它是否相关,但我的地区是

Sys.getlocale()
[1]"LC_COLLATE=Danish_Denmark.1252;LC_CTYPE=Danish_Denmark.1252;LC_MONETARY=Danish_Denmark.1252;LC_NUMERIC=C;LC_TIME=Danish_Denmark.1252"

使用的月份格式不是丹麦语,而是英语(因此OCT在丹麦语中为OKT(。

希望你们中的一些人能帮助我!

正如里奇在评论中所说。命名格式就可以了。此外,您应该将%S%OS更改为%OS%OS已经完成了秒和分数,因此不需要%S

总之,以下内容应适用于new_date <- as.POSIXct(date, format = "%d%b%Y:%H:%M:%OS")

编辑:这适用于以下区域设置:

> Sys.getlocale()
[1] "LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=sv_SE.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=sv_SE.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=sv_SE.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=sv_SE.UTF-8;LC_IDENTIFICATION=C"
library(lubridate)
date <- "02OCT2019:15:04:34.000000"
dmy_hms(date)
# [1] "2019-10-02 15:04:34 UTC"

相关内容

  • 没有找到相关文章

最新更新