R或Python中的季节性调整
有没有人知道在Python或者更好的是R语言中,如何进行季节性调整的程序?这里有一个示例数据集(南非的消费者物价指数),它在每年的前几个月通常会出现一些尖峰:
我想找出去掉季节性因素后的基本趋势,但我希望使用一些比较简单的、内置于这两种语言中的方法,而不是使用外部包,比如Demetra。
2 个回答
0
这是一个链接,指向一个关于SciPy用户讨论的邮件列表,日期是2010年1月。你可以点击这个链接查看相关的讨论内容。
14
第一步:定义数据。
(数据来源于 这个链接)
CPI <- c(102.3, 103.1, 104.3, 105.7, 106.2, 106.6, 107, 108.2, 108.5, 108.9,
108.9, 108.9, 109.2, 109.5, 110.2, 111.1, 111.3, 111.5, 111.5,
112.2, 112.3, 112.4, 112.6, 112.8, 113, 113.5, 114.3)
第二步:计算每个月的指数变化,并把它转换成时间序列对象。
dCPI <- ts(CPI[-1] - CPI[-length(CPI)], start=2008, frequency=12)
第三步:使用 stl()
这个函数来计算季节性、趋势和残差:
plot(stl(dCPI, "periodic"))