【问题标题】:convert quarters into dates将季度转换为日期
【发布时间】:2022-11-09 23:59:20
【问题描述】:

我想将季度转换为日期。

 x <- c("2021Q4", "2021Q3", "2021Q2","2021Q1")

期望的输出

12-31-2021
09-30-2021
06-30-2021
03-31-2021

【问题讨论】:

标签: r lubridate


【解决方案1】:

由于季度末日期始终相同,您可以使用以下函数:

quarter_to_date <- function(x) {

  as.Date(paste0(substr(x, 1, 4),
         c("-12-31", "-09-30", "-06-30", "-03-31")[match(substr(x, 5, 6), 
         c("Q4", "Q3", "Q2", "Q1"))]))
}

所以在你的例子中,我们会有

x <- c("2021Q4", "2021Q3", "2021Q2","2021Q1")

quarter_to_date(x)
#> [1] "2021-12-31" "2021-09-30" "2021-06-30" "2021-03-31"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-13
    • 2019-06-28
    • 2021-07-26
    • 2016-02-10
    • 2018-10-31
    • 1970-01-01
    • 2015-05-10
    • 1970-01-01
    相关资源
    最近更新 更多