Если вы не уверены в формате, функция guess_formats
в lubridate
очень полезна:
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
, если требуется.