我有一个系统生成的日期和时间格式。它看起来像这样,“ 2017-04-12-02.29.25.000000
”。我想将此格式转换为标准格式,以便我的系统可以读取它,然后我可以将其转换为分钟。有人请帮助提供 R 中的代码。
问问题
208 次
1 回答
1
如果您不确定格式,guess_formats
函数 inlubridate
非常有用:
w <- "2017-04-12-02.29.25.000000"
> lubridate::guess_formats(w, orders = 'YmdHMS')
YOmdHMS YmdHMS
"%Y-%Om-%d-%H.%M.%OS" "%Y-%m-%d-%H.%M.%OS"
orders
是您希望函数调查的格式,它会输出正确的表示形式。如果字符串中的第二个条目是您可以尝试的日期YdmHMS
。
上面示例中输出中两种格式的差异基于第二个条目的格式(始终带有前导零或不带有前导零)。尝试第一种格式给出:
> as.POSIXct(w, format = "%Y-%Om-%d-%H.%M.%OS")
[1] "2017-04-12 02:29:25 EDT"
如果需要,您可以在as.POSIXct
通话中指定时区tz
。
于 2018-06-11T12:53:50.237 回答