【发布时间】:2021-11-22 15:32:31
【问题描述】:
我在 R 中有以下日期向量。我想将其从字符类转换为日期类,但是我只想将日期显示为年月 (%Y-%m) 而不是年月-day (%Y-%m-%d)
library(tidyverse)
dates <- structure(list(Date = c("2022-03-24", "2022-04-21", "2022-05-24",
"2022-07-22", "2022-09-01")), row.names = c(NA, -5L), class = c("tbl_df",
"tbl", "data.frame"))
dates %>%
mutate(Date = format(as.Date(Date), '%Y-%m'))
当使用format 将日期转换为%Y-%m 时,有没有办法将向量的类保持为<date> 而不是字符<chr>?
# A tibble: 5 x 1
Date
<chr>
1 2022-03-24
2 2022-04-21
3 2022-05-24
4 2022-07-22
5 2022-09-01
【问题讨论】:
-
Date也需要一天。可以使用zoo::as.yearmon(Date)创建 yearmon 类,或者您可以将day部分更改为恒定值,即 1,然后它应该也可以正常工作,即您可以在年、月、日中获取日期,并具有恒定的日期 -
@akrun 说得通!如何将每个日期的
day更改为恒定值(即每月的第一天)? -
请查看下方发布的解决方案