我正在尝试使用statsmodels来预测具有外生变量的ARIMA模型。使用一系列外生变量进入未来的八个时期,我运行以下命令:
prediction = dynamic_arima_results.forecast(steps=8, exog=X_pred)
并收到以下错误:
Traceback (most recent call last):
File "<ipython-input-1-9cfb206405a4>", line 41, in evaluate_model
prediction = dynamic_arima_results.forecast(steps=8, exog=X_pred)
File ".../arima_model.py", line 1603, in forecast exog, method=self.model.method)
File ".../arima_model.py", line 235, in _arma_predict_out_of_sample exog)
File ".../arima_model.py", line 206, in _get_predict_out_of_sample
X = lagmat(np.dot(exog, exparams), p, original='in', trim='both')
ValueError: matrices are not aligned
稍微捅了一下后,似乎错误来自点积:np.dot(exog, exparams)
步。 exog
是一系列8个外生值,一个用于未来的每个时期,但exparams
是单个值,我假设外生变量的系数。
如果我只提前预测一个步骤并且仅传递外生变量的单个值,则预测会产生结果。我做的事情显然是愚蠢的,还是多期预测,外生变量尚未实施?
答案 0 :(得分:2)
是。这是一个错误。我假设你在0.5.0?这应该在master中修复,并将在下一个版本中修复。与此同时,如果可以,我会尝试升级。如果您在Windows上,请参阅github构建文档或安装夜间二进制文件。
您可以搜索SO和github问题,以获取有关错误的更多信息。