如何将数字日期变量转换为季度日期?

时间:2015-11-09 16:39:50

标签: r date

我有一个面板数据集,其第一列是Stata中Year-quarter格式的日期,如下所示:

quarter id
1993q1  1
1993q2  1
1993q3  1
1993q4  1
1994q1  1
1994q2  1
1994q3  1
1994q4  1
1995q1  1
1995q2  1
1995q3  1
1995q4  1

我已将数据集从Stata导入R,但我不知道如何使用as.Date函数将其转换为Date格式。(我刚刚开始学习R)日期如下所示的 - [R

quarter
137
138
139
140
141
142
143
144
145
146
147

所以我的问题:是否有内置的方式以Stata中的格式导入季度数据,如果没有,我怎样才能将这个数字日期转换为R中的季度?有什么建议吗?

2 个答案:

答案 0 :(得分:3)

您可以使用as.yearqtr包中的zoo。 对于字符串格式:

library(zoo)
as.yearqtr("1993q1",format="%Yq%q")
#[1] "1993 Q1"

对于数字格式:

#origin seems to be 1958 Q4
start_val=1958.75
#137 is the first value in your list
as.yearqtr(start_val+137/4)
#[1] "1993 Q1"

答案 1 :(得分:0)

尝试:

library(zoo)
quarter <- c("1993q1", "1993q2")
as.yearqtr(quarter)
## [1] "1993 Q1" "1993 Q2"

另请注意?strftime?as.yearqtr

中的百分比代码