ARIMA 结果中的模型方程

问题描述 投票:0回答:1

我使用 statsmodels 中的 ARIMA 进行时间序列分析。现在我偶然发现了以下网站

在此示例中,通过 ARIMA.fit() 使用以下结果构建了 ARIMA(3,1,0) 模型:

          coef
ar.L1   -0.5353
ar.L2   -0.3974
ar.L3   -0.3856

模型方程为:

Δy_t = −0.5232y_(t−1) − 0.3836y_(t−2) − 0.3758y_(t−3) + w_t,

模型方程中滞后变量的 AR 系数值来自哪里,有什么想法吗?或者我只见树木不见森林。我认为 AR 系数可以直接在 ARIMA.fit() 的结果对象中看到。

提前致谢!

python statsmodels arima
1个回答
0
投票

答案应位于链接网站的第 20 和 21 单元格中。

在摘要中,您可以看到所有系数及其标准误差等:

```python
from statsmodels.tsa.arima.model import ARIMA

model = ARIMA(data, order=(3, 1, 0))
model_fit = model.fit()
print(model_fit.summary())
```

您可以通过params字典直接访问参数。因此,要手动定义上面给出的函数,您可以使用

```python
import math

ar1 = model_fit.params["ar.L1"]
ar2 = model_fit.params["ar.L2"]
ar3 = model_fit.params["ar.L3"]
sigma2 = model_fit.params["ar.sigma2"]

def calc_delta_y(y, t=0):
   """delta_y calculated from this specific ARIMA model"""
   return ar1*y[t-1] + ar2*y[t-2] + ar3*y[t-3] + math.sqrt(sigma2) 
```

我猜你是只见树木不见森林,但我也知道你不是第一个寻找这些参数的人。

© www.soinside.com 2019 - 2024. All rights reserved.