如何从月度数据中获取季度变化?

时间:2019-07-05 09:58:27

标签: r time-series

我有一个数据列,该数据列显示1987年5月至2019年6月的月度价格。并且想获得价格的季度变化作为单独的数据,仅能获得q1(1月至3月)q2(4月至6月)q3( 7月-9月)和q4(10月-12月)。我如何在R中做到这一点?谢谢

monthly <- ts(prices,start=c(1987,5),frequency=12)
quarters <- monthly/stats::lag(monthly,-3)-1

1 个答案:

答案 0 :(得分:0)

1)使用内置的const AppContexts = { NUMBER: 'userConfigData', } conv.contexts.set(AppContexts.NUMBER, 5,AppContexts) const value = conv.contexts.get(AppContexts.NUMBER) 类数据集ts将其汇总到季度级别,得出AirPassengers,从而a结束于四分之一的值,然后计算收益。

a

给予:

a <- aggregate(AirPassengers, 4, function(x) tail(x, 1))
a / lag(a, -1) - 1

2):另一种方法是将其转换为Zoo,并使用其提供的 Qtr1 Qtr2 Qtr3 Qtr4 1949 0.022727273 0.007407407 -0.132352941 1950 0.194915254 0.056737589 0.060402685 -0.113924051 1951 0.271428571 0.000000000 0.033707865 -0.097826087 1952 0.162650602 0.129533679 -0.041284404 -0.071770335 1953 0.216494845 0.029661017 -0.024691358 -0.151898734 1954 0.169154229 0.123404255 -0.018939394 -0.115830116 1955 0.165938865 0.179775281 -0.009523810 -0.108974359 1956 0.140287770 0.179810726 -0.050802139 -0.138028169 1957 0.163398693 0.185393258 -0.042654028 -0.168316832 1958 0.077380952 0.201657459 -0.071264368 -0.165841584 1959 0.204747774 0.162561576 -0.019067797 -0.125269978 1960 0.034567901 0.276849642 -0.050467290 -0.149606299 的{​​{1}}参数。

arith=FALSE

给予:

diff