首页 > 解决方案 > 如何将字符串“2019-10-09T06:07:05.888Z”转换为日历日期和时间

问题描述

请帮我找到将“2019-10-09T06:07:05.888Z”转换为日历时间戳的解决方案。我尝试了以下方法,

> format(as.POSIXlt("2019-10-09T06:07:05.888Z"), "%Y-%m-%d %H:%M:%OS3")
[1] "2019-10-09 00:00:00.000"

> as.POSIXct("2019-10-09T06:07:05.888Z", format="%Y-%m-%d %H:%M:%OS")
[1] NA

标签: rtimestampposixctposixlt

解决方案


有了as.POSIXct,我们可以先将数据转换成POSIXct类,然后使用format以我们想要的格式显示输出。

temp <- as.POSIXct("2019-10-09T06:07:05.888Z",format = "%Y-%m-%dT%H:%M:%OS", tz = "UTC")
format(temp, "%Y-%m-%d %H:%M:%OS3")
#[1] "2019-10-09 06:07:05.888"

或与lubridate

format(lubridate::ymd_hms("2019-10-09T06:07:05.888Z"), "%Y-%m-%d %H:%M:%OS3")

推荐阅读