使用lubridate解析日期时间

时间:2016-03-04 22:49:52

标签: r lubridate

我正在尝试使用以下格式解析以下日期时间:

library(lubridate)
a <- "2004-05-07 18:24:58.666424"

我尝试了以下内容,但返回了NAs

b <- lubridate::mdy_hms(a)
c <- lubridate::mdy(a)

有人可以解释如何解析这个问题。如果不使用润滑剂,我也很好。

3 个答案:

答案 0 :(得分:7)

使用lubridate,您可以指定您的秒数具有特殊S!OS格式的小数;有关更多解析选项,请参阅?parse_date_time

> parse_date_time("2004-05-07 18:24:58.666424", 'ymd HMS!')
[1] "2004-05-07 18:24:58 UTC"

或者,它似乎只用通常的默认"ymd HMS"解析:

parse_date_time("2004-05-07 18:24:58.666424", 'ymd HMS')

或简写

ymd_hms("2004-05-07 18:24:58.666424")

答案 1 :(得分:4)

尝试

options(digits.secs=6)
as.POSIXct(a,"%Y-%m-%d %H:%M:%S.%OS")
#[1] "2004-05-07 18:24:58.666424"

答案 2 :(得分:0)

mdy =月份日,您的数据设置为ymd

尝试ymd_hms或ymd