python - R 或 Python 中的季节性调整

标签 python r time-series

有没有人知道在 Python 中或更好的 R 中进行季节性调整的例程?这是一个示例数据集(南非 CPI),它往往在一年的前几个月出现峰值:

SA m/m CPI

我想找到排除季节性因素的潜在压力,但理想情况下,我希望使用相当简单的东西,内置在任何一种语言中,而不是直接连接或使用外部包,如 Demetra。

最佳答案

第 1 步。定义数据。

(从http://www.statssa.gov.za/publications/P0141/P0141February2011.pdf获得)

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)

第 3 步。使用函数 STL() 计算季节性、趋势和残差:

plot(stl(dCPI, "periodic"))

enter image description here

关于python - R 或 Python 中的季节性调整,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5673658/

相关文章:

python - 函数 numpy.fft.fftfreq 的含义

python - 慢 pd.to_datetime()

r - 参数化查询不适用于 SQL Server 2017

r - 使用 tmap 包绘制时,两个多边形之间的边界线似乎与轮廓不同

python - 将数据框列从对象转换为日期而不是日期时间

python - 如何将 pandas Dataframe 与列表匹配并合并?

r - 来自 Azure 机器学习的错误请求响应

python - 无法将 Python 列表转换为 timeSeries

python - 用于附加和创建 pandas 数据帧的快速 numpy 数组结构

python - Pandas 将一天中的所有值设置为当天某个时间的数据