使用lubridate解析日期时间

use*_*531 3 r lubridate

我试图用以下格式解析以下日期时间:

library(lubridate)
a <- "2004-05-07 18:24:58.666424"
Run Code Online (Sandbox Code Playgroud)

我尝试了以下方法,但是返回了NAs

b <- lubridate::mdy_hms(a)
c <- lubridate::mdy(a)
Run Code Online (Sandbox Code Playgroud)

任何人都可以解释如何解析这个问题.如果不使用lubridate我也没关系.

ali*_*ire 9

使用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"
Run Code Online (Sandbox Code Playgroud)

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

parse_date_time("2004-05-07 18:24:58.666424", 'ymd HMS')
Run Code Online (Sandbox Code Playgroud)

或速记

ymd_hms("2004-05-07 18:24:58.666424")
Run Code Online (Sandbox Code Playgroud)


RHe*_*tel 5

尝试

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