我很难找到关于
'u'
statsmodels返回的参数
ARIMA.fit
以下ARMAX模型参数估计示例中的方法:
import pandas as pd
from statsmodels.tsa.arima.model import ARIMA
# Sample of the full input-output dataset
id_data = pd.DataFrame({
'u': [0, 0, 0, 0, 0, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
'y': [-1.4369, -0.999, -0.0325, 0.8435, 0.4339, -0.2925,
-0.8885, -2.3191, -4.004, -5.4779, -7.053, -7.5489,
-8.779, -8.9262, -8.5207, -8.3915, -8.5699, -8.2192,
-8.284, -7.6011]
})
arma22 = ARIMA(id_data.y, exog=id_data.u, order=(2, 0, 2), trend='n').fit()
print(arma22.params)
print(arma22.summary())
输出:
u -0.564553
ar.L1 1.798081
ar.L2 -0.829465
ma.L1 -0.859744
ma.L2 0.998002
sigma2 0.220407
dtype: float64
SARIMAX Results
==============================================================================
Dep. Variable: y No. Observations: 20
Model: ARIMA(2, 0, 2) Log Likelihood -18.559
Date: Sun, 25 Feb 2024 AIC 49.119
Time: 14:26:11 BIC 55.093
Sample: 0 HQIC 50.285
- 20
Covariance Type: opg
==============================================================================
coef std err z P>|z| [0.025 0.975]
------------------------------------------------------------------------------
u -0.5646 0.303 -1.861 0.063 -1.159 0.030
ar.L1 1.7981 0.158 11.407 0.000 1.489 2.107
ar.L2 -0.8295 0.164 -5.059 0.000 -1.151 -0.508
ma.L1 -0.8597 21.365 -0.040 0.968 -42.735 41.016
ma.L2 0.9980 49.501 0.020 0.984 -96.022 98.018
sigma2 0.2204 10.881 0.020 0.984 -21.106 21.547
===================================================================================
Ljung-Box (L1) (Q): 1.05 Jarque-Bera (JB): 0.81
Prob(Q): 0.31 Prob(JB): 0.67
Heteroskedasticity (H): 0.78 Skew: 0.27
Prob(H) (two-sided): 0.76 Kurtosis: 2.18
===================================================================================
Warnings:
[1] Covariance matrix calculated using the outer product of gradients (complex-step).
我原以为ARMAX(2,2)模型有四个参数(四个自由度)。我已经关掉了潮流(
const
)参数,所以不可能是这样。
有一个ARMAX(1,1)模型的工作示例
here
但是没有
u
参数出现在结果中。
如果有人能给我指出文件中提到“u”是什么的部分,我将不胜感激。