Может ли статистическая модель ARIMA прогнозировать на несколько шагов вперед, используя экзогенную переменную

Я пытаюсь использовать статистические модели для прогнозирования модели 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 - это единственное значение, как я предполагаю, коэффициент на экзогенной переменной.

Прогнозирование дает результат, если я заранее предсказываю только один шаг и передаю только одно значение для экзогенной переменной. Я делаю что-то явно глупое или многопериодное прогнозирование с экзогенными переменными еще не реализовано?


person Luke    schedule 15.08.2014    source источник


Ответы (1)


да. Это ошибка. Я полагаю, вы на 0.5.0? Это должно быть исправлено в мастере и будет исправлено в следующем выпуске. А пока я попробую обновиться, если сможете. См. Документацию по сборке из github или установке ночных двоичных файлов, если вы работаете в Windows.

Вы можете поискать проблемы SO и github для получения дополнительной информации об ошибке.

person jseabold    schedule 15.08.2014