StatsModels SARIMAX с экзогенной переменной и линейным временным трендом - PullRequest
1 голос
/ 26 мая 2020

Я пытаюсь спрогнозировать модель SARIMAX с линейным временным трендом, принимая значение 1 для первой точки данных в и и увеличивая на 1 для каждого последующего наблюдения до N = размер выборки. Термин «тренд» введен потому, что он значительно улучшает прогнозирующую способность модели, но мы хотим «заморозить» его до последнего наблюдаемого значения для прогнозирования вне выборки. А именно, если размер выборки равен 100, мы хотим использовать это значение для каждого шага в прогнозировании с увеличением на 1 на каждом шаге

Модель была подогнана следующим образом

from statsmodels.tsa.statespace.sarimax import SARIMAX

model = SARIMAX(endog=Unemployment_series,exog=sm.add_constant(insample['GDP_yoy'].values),order=(1,0,0),trend ='t').fit(disp=-1)

Согласно документации statsmodels в https://www.statsmodels.org/dev/generated/statsmodels.tsa.statespace.sarimax.SARIMAX.html, параметр тренд позволяет нам исправить линейный временной тренд.

Проблема возникает при попытке составить прогноз с использованием методов get_forecast или get_prediction

forecast = model.get_forecast(steps=len(outsample),exog = sm.add_constant(outsample['GDP_yoy'].values,has_constant='add'))

или

forecast = model.get_prediction(start=len(insample),end=len(insample)+len(outsample)-1,exog = sm.add_constant(outsample['GDP_yoy'].values,has_constant='add'))

Поскольку я не нашел ни одного параметра, который позволяет контролировать поведение временного тренда, какие-либо советы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...