使用as.yearqtr将Qqyyyy转换为季度

使用as.yearqtr将Qqyyyy转换为季度,r,date-formatting,zoo,R,Date Formatting,Zoo,如何使用R中的as.yearqtr将类似“Q12000”的字符串转换为季度格式 我有一个四分之一的向量: x <- c("Q12000", "Q22000", "Q32000") x <- c("Q12000", "Q22000", "Q32000") 结果应为“2000年第一季度”、“2000年第二季度”和“2000年第三季度”。相反,我得到的是所有NA不幸的是,实现不理解四分之一只能是一个数字,因此需要用非数字分隔。例如,在四分之一后插入空格: as.yearqtr(sub(

如何使用R中的
as.yearqtr
将类似“Q12000”的字符串转换为季度格式

我有一个四分之一的向量:

x <- c("Q12000", "Q22000", "Q32000")
x <- c("Q12000", "Q22000", "Q32000")

结果应为“2000年第一季度”、“2000年第二季度”和“2000年第三季度”。相反,我得到的是所有
NA

不幸的是,实现不理解四分之一只能是一个数字,因此需要用非数字分隔。例如,在四分之一后插入空格:

as.yearqtr(sub("(..)", "\\1 ", x), format = "Q%q %Y")
## [1] "2000 Q1" "2000 Q2" "2000 Q3"
或者先将其转换为默认格式:

as.yearqtr(sub("Q(.)(....)", "\\2-\\1", x))
## [1] "2000 Q1" "2000 Q2" "2000 Q3"
注意:

x
x <- c("Q12000", "Q22000", "Q32000")