重新排列 zoo::as.yearqtr() 输出

Rearranging the zoo::as.yearqtr() output

我知道我可以打电话:

library(zoo)
Sys.Date()
CQ <- as.yearqtr(Sys.Date())
CQ

并得到:

"2015-03-05"
"2015 Q1"

但我需要我的输出是:

"Q1-2015"

如何将 CQ 转换为 QX-YYYY?

你可以试试

format(CQ, 'Q%q-%Y')
#[1] "Q1-2015"

您可以使用基数 R 获得类似的结果。例如,

x <- seq(Sys.Date(), Sys.Date() + 180L, by = "month") # Generate some dates vector
paste(quarters(x), as.POSIXlt(x)$year + 1900L, sep = "-")
## [1] "Q1-2015" "Q2-2015" "Q2-2015" "Q2-2015" "Q3-2015" "Q3-2015"