如何解决statsmodel 时间序列分析 - 使用内生变量和外生变量之间具有不同滞后的 AR 模型
我正在尝试在 python 中构建一个 ARDL 模型,其中我有一个模型:
y = b0 + b1^t-1 + b2^t-2 + ... b5^t-5 + a1^x-1
换句话说,时间序列模型具有 5 个自回归滞后项和 1 个外生滞后项。
我尝试使用 statsmodels.tsa.arima_model.ARMA,它允许使用外生变量,我得到了包含以下变量的输出:
常量、x1、ar.L1.y、ar.L2.y、ar.L3.y、ar.L4.y、ar.L5.y
模型 = ARMA(endog=returns,order=(ar_order,exog_order),exog=exog_returns)
model_fit = model.fit()
打印(model_fit.summary())
基于 x1 的系数值,我假设这不是 1 个时间滞后之前,而是外生变量作为一个整体的影响值。
无论如何要指定我只希望模型对模型中的外生变量使用 1 个时间滞后?
解决方法
不要使用 ARMA
是否已弃用。使用 SARIMAX
或 AutoReg
。
使用 exog 变量的关键是确保它们与它们影响的 y 数据对齐。这里我将 x
移动 1,这样就好像 x 的滞后在驱动 y。
如果使用 AutoReg,你可以这样做
from statsmodels.tsa.api import AutoReg
import numpy as np
import pandas as pd
rg = np.random.default_rng(0)
idx = pd.date_range("1999-12-31",freq="M",periods=100)
x = pd.DataFrame({"x":rg.standard_normal(100)},index=idx)
x = x.shift(1) # lag x
y = x @ np.ones((1,)) + rg.standard_normal(100)
# Drop first obs which is NaN
y = y.iloc[1:]
x = x.iloc[1:]
# 5 lags and exogenous regressors
res = AutoReg(y,5,exog=x,old_names=False).fit()
# Summary
res.summary()
这会产生
AutoReg Model Results
==============================================================================
Dep. Variable: y No. Observations: 99
Model: AutoReg-X(5) Log Likelihood -127.520
Method: Conditional MLE S.D. of innovations 0.940
Date: Mon,01 Mar 2021 AIC 0.046
Time: 14:57:44 BIC 0.262
Sample: 06-30-2000 HQIC 0.133
- 03-31-2008
==============================================================================
coef std err z P>|z| [0.025 0.975]
------------------------------------------------------------------------------
const -0.0500 0.098 -0.512 0.609 -0.241 0.141
y.L1 -0.0342 0.070 -0.486 0.627 -0.172 0.104
y.L2 0.0621 0.070 0.884 0.377 -0.076 0.200
y.L3 -0.0715 0.071 -1.009 0.313 -0.210 0.067
y.L4 -0.0941 0.070 -1.347 0.178 -0.231 0.043
y.L5 -0.0323 0.071 -0.453 0.651 -0.172 0.107
x 1.0650 0.103 10.304 0.000 0.862 1.268
Roots
=============================================================================
Real Imaginary Modulus Frequency
-----------------------------------------------------------------------------
AR.1 1.1584 -1.0801j 1.5838 -0.1194
AR.2 1.1584 +1.0801j 1.5838 0.1194
AR.3 -1.3814 -1.7595j 2.2370 -0.3559
AR.4 -1.3814 +1.7595j 2.2370 0.3559
AR.5 -2.4649 -0.0000j 2.4649 -0.5000
-----------------------------------------------------------------------------
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。