Как я могу прогнозировать реальные значения на стационарном наборе данных, но оригинал не является стационарным - PullRequest
0 голосов
/ 19 февраля 2020

Я пытался создать модель SARIMAX для прогнозирования. Моя серия не является стационарной, поэтому я решил сделать ее стационарной. Результат Дики-Фуллера такой, как показано ниже после применения разности.

df_diff = df_raw.set_index('date')
df_diff = df_diff.diff().dropna()

# Augmented Dickey-Fuller test statistics on df_diff
adf_test_diff = adfuller(df_diff['count'])
print("Test Statistics:", adf_test_diff[0])
print("p_value:", adf_test_diff[1])

Test Statistics: -3.857194506794311
p_value: 0.002373458612429799

Затем я нахожу лучшие параметры для модели с pmdarima, затем я создал модель, как показано ниже, пока она работала довольно хорошо.

model = SARIMAX(df_diff, order=(0,0,1), seasonal_order = (0,1,1,12))
results = model.fit()
forecast = results.get_prediction(start=-10)
mean_forecast = forecast.predicted_mean

Теперь я хочу сделать прогноз, но вся модель основана на «стационарном» наборе данных, которым я манипулировал из исходного нестационарного набора данных. Очевидно, мне нужны реальные прогнозные значения, так как я могу это сделать? Как я могу вернуться к оригиналу?

Спасибо

...