问题描述
1. 04.05.2003 23:00:00.000 GMT+0200
2. 04.05.2003 23:00:00.000 GMT+0200
3. 04.05.2003 23:30:00.000 GMT+0200
4. 04.05.2003 23:45:00.000 GMT+0200
我想要一个表示日和日内变化的日期变量,我尝试使用以下方法将其转换为 R 中的日期变量:
as.POSIXct(variable,format="%d.%b.%Y %H:%M:%OS %Z")
解决方法
使用lubridate::dmy_hms
:
variable <- c('4.05.2003 23:00:00.000 GMT+0200','04.05.2003 23:15:00.000 GMT+0200','04.05.2003 23:30:00.000 GMT+0200')
variable <- lubridate::dmy_hms(variable)
variable
#[1] "2003-05-04 21:00:00 UTC" "2003-05-04 21:15:00 UTC" "2003-05-04 21:30:00 UTC"
,
不确定时区,但您在应该使用 %b
的地方使用了 %m
:
as.POSIXct(variable,format="%d.%m.%Y %H:%M:%OS")
# "2003-05-04 23:00:00 GMT"