作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我生成一些数据,如 [1, 6, 1, 6, 1, 6] 并在正态分布下添加噪声。我使用 arma_order_select_ic
来选择订单。然后使用aic_min_order来拟合ARMA模型。有时该模型效果很好。但有时它会引发 ValueError。
ValueError:计算出的初始 AR 系数不是平稳的
这是我的代码。
import statsmodels.api as sm
import numpy as np
x = [1 if i%2 == 0 else 6 for i in range(50)]
eta = np.random.normal(0, 0.01, 50)
x = x + eta
res = sm.tsa.stattools.arma_order_select_ic(x, ic=['aic'])
print res.aic_min_order
model = sm.tsa.ARMA(x, res.aic_min_order).fit(disp = 0)
print model.predict(45, 55)
我错过了什么或者ARMA不适合这种数据吗?
最佳答案
ARMA 专为平稳过程而设计,默认情况下对参数估计施加平稳性。
您的数据不是平稳的,即滞后多项式具有季节性单位根。通常的处理方法是使用季节差分或确定性季节模式,例如使用虚拟变量或样条线。
Statsmodels 目前没有自动季节检测和模型选择,但 SARIMAX 可用于季节集成 ARMA 流程。
关于python - 为什么我在使用 aic_min_order 时得到 'The computed initial AR coefficients are not stationary'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42453381/
我是一名优秀的程序员,十分优秀!