格式化R

时间:2016-07-15 17:41:30

标签: r date

我有两列不同格式的日期字符串,我需要制作相同的格式,

第一个是以下形式:

vt_dev_date = "6/20/2016 7:45"

第二个是

形式
vt_other = "2016-06-14 20:21:29.0"

如果可以将它们以相同的形式提供给那些非常棒的分钟。我试过了

strptime(vt_dev_date,format = "%Y-%m-%d %H:%M")
strptime(vt_other,"%Y-%m-%d %H:%M")

而对于第二个,它起作用,我得到了 “2016-06-14 20:21:00美国东部时间”

但是对于第一个字符串,似乎因为月份和小时没有用零填充,所以没有任何格式化技巧会起作用,因为如果我尝试

test_string <- "06/20/2016 07:45"
strptime(test_string,format = "%m/%d/%Y %H:%M")
[1] "2016-06-20 07:45:00 EDT"

它有效,但我不认为遍历列中的每一行并填充每个日期是一个很好的选择。任何帮助将不胜感激。

谢谢,

约什

1 个答案:

答案 0 :(得分:2)

如何使用lubridate,如下:

library(lubridate)

x <- c("6/20/2016 7:45","2016-06-14 20:21:29.0")

> x
[1] "6/20/2016 7:45"        "2016-06-14 20:21:29.0"

> parse_date_time(x, orders = c("mdy hm", "ymd hms"))
[1] "2016-06-20 07:45:00 UTC" "2016-06-14 20:21:29 UTC"
>