我有一个日期值为dd / mm / yy的矢量,例如(27/06/16)。 我希望以yyyy-mm-dd这种格式转换它,例如(2016-06-27)进行逻辑比较。我正在使用这个表达式:
as.Date(as.character("27/06/16"), format = "%d")
输出结果如下:
"2016-07-27"
如何将其转换为所需格式。
答案 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")
由于d1
和d2
都应该属于同一个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