问题描述
我有一些只有月份和日期的日期(字符串),例如“20-May”。我正在使用 as.Date 将其转换为日期对象:
as.Date("20-May",format = "%d-%b")
我得到的是:"2021-05-20"
。所以 R 会自动将年份设置为当前年份。但我想自定义到 2019 年(预计输出为 "2019-05-20"
)。如何做到这一点?
解决方法
Date
涉及“年”、“月”和“日”。如果未指定其中之一,即“年份”,它将获取当前的“年份”。通过paste
输入“年份”并指定四位数年份 format
(%Y
)
as.Date(paste0("20-May","-2019"),format = "%d-%b-%Y")
#[1] "2019-05-20"
或者另一种选择是通过分配来更改 year
library(lubridate)
date1 <- as.Date("20-May",format = "%d-%b")
year(date1) <- 2019
date1
#[1] "2019-05-20"