我正在尝试将此时间戳转换为POSIXct
t1 <- c("19-Jun-13 06.00.00.00 PM")
如果我这样做:
t1 <- as.POSIXct(t1, format="%d-%b-%y %H:%M:%S")
这会转换这个时间戳吗?那是否最终考虑了AM / PM?
答案 0 :(得分:9)
阅读?strptime
。 %p
,仅适用于%I
,而非%H
。您的时间格式也不正确。您的时间间隔为"."
,而不是":"
。
as.POSIXct("19-Jun-13 06.00.00.00 PM", format="%d-%b-%y %I.%M.%OS %p")
答案 1 :(得分:0)
我没有说明为什么strptime
无法正确识别%p
格式。但是,包dmy_hms
中的函数lubridate
效果很好。
lubridate::dmy_hms("19-Jun-13 06.00.00.00 PM")
会产生以下结果:
[1] "2013-06-19 18:00:00 UTC"
as.POSIXct(dmy_hms("19-Jun-13 06.00.00.00 PM"), format="%Y-%m-%d %H:%M")
[1] "2013-06-19 18:00:00 UTC"