如何在R

时间:2016-07-01 13:02:29

标签: r

我有一个日期值为dd / mm / yy的矢量,例如(27/06/16)。 我希望以yyyy-mm-dd这种格式转换它,例如(2016-06-27)进行逻辑比较。我正在使用这个表达式:

as.Date(as.character("27/06/16"), format = "%d")

输出结果如下:

"2016-07-27"

如何将其转换为所需格式。

6 个答案:

答案 0 :(得分:5)

使用lubridate

library(lubridate)
dmy("27/06/16")

答案 1 :(得分:2)

R 为基础

as.Date(as.character("27/06/16"), format = "%d/%m/%y")

答案 2 :(得分:2)

一种选择是将两种日期格式转换为通用的POSIX表示形式:

d1 <- strptime("27/06/16", "%d/%m/%y")
d2 <- strptime("2016-06-27", "%Y-%m-%d")

由于d1d2都应该属于同一个R类,因此您可以根据需要进行比较。

答案 3 :(得分:0)

使用dplyr

df.with.converted.date <- df.with.original.date %>%
  mutate(new.date.var = as.character(as.Date(old.date.var, "%m/%d/%Y"),"%Y%m%d"))

例如,这会将"5/3/2019"转换为20190503

答案 4 :(得分:-1)

尝试

as.Date( as.character("27/06/16"), format = "%Y-%m-%d")

答案 5 :(得分:-1)

strDates <- c("27/06/16")
dates <- as.Date(strDates, "%m/%d/%Y")

这有效。

请参阅此内容以获取更多信息。http://www.statmethods.net/input/dates.html