如何使用lubridate转移到日期时间?

时间:2018-06-06 17:00:28

标签: r date lubridate

给定日期时间:

  

“Tue May 01 23:02:50 GMT + 03:00 2018”

如何将其转换为正常的ddmmyyyy hh:mm:ss格式?

我尝过as.date - 得到了NA。 尝试parse_date_time - 结果相同。

请告知。

1 个答案:

答案 0 :(得分:2)

使用lubridate,你可以做

time <- as_datetime("Tue May 01 23:02:50 GMT+03:00 2018", 
            format = "%a %b %d %H:%M:%S GMT+03:00 %Y", 
            tz = "Etc/GMT-3")
time
[1] "2018-05-01 23:02:50 +03"

然后,如果你想在你的时区看到它,你可以做类似

的事情
with_tz(time, tzone = "America/New_York")
[1] "2018-05-01 16:02:50 EDT"

其中tzone参数将是您的时区。

如果你的数据中有不同的时区而不是GMT + 3:00,那么这不会起作用。如果是这种情况,您可以查看Reading timestamp data in R from multiple time zones