Прогнозирование ARIMA на основе реальных значений - PullRequest
1 голос
/ 20 июня 2020

Сделал модель ARIMA для прогнозирования накопления электроэнергии. Я также обнаружил лучший коэффициент AR I и AM (1,0,6). Значения измеряются каждые пять минут и импортируются в виде файла csv. Один день - это моделирование таймсерий, а другой - предсказание. Мой код следующий:

from statsmodels.tsa.arima_model import ARIMA
rcParams['figure.figsize'] = 15, 10
timeseries = df_5min['2010-07-06']
model = ARIMA(timeseries, order=(1,0,6))
result_AR = model.fit(disp=-1)
time_series_df = result_AR.fittedvalues

result_AR.plot_predict(1,600, alpha=0.05)
x = result_AR.forecast(steps=600)
plt.plot(linewidth=1, legend=None)
plt.ylabel('Verbrauch (W)')
plt.xlabel('Zeit (t)')
plt.show()

Результат: ПРОГНОЗ ARIMA

Как видите, прогноз очень плохой. ARIMA работает с регрессией, поэтому он берет последние значения и на их основе предсказывает следующее.

Мой вопрос: у меня также есть реальные значения для предсказанного дня (07-08 июля). Теперь я хочу, чтобы ARIMA предсказывала только следующие шесть шагов, например, на основе последних шести реальных значений. После прогнозирования ступеней пола он снова берет последние шесть реальных значений и на их основе прогнозирует следующие шесть, например,

1 Ответ

1 голос
/ 22 июня 2020

Если возможно, вам следует переключиться на использование модели SARIMAX, которая имеет больше функций и будет лучше поддерживаться в будущем (модель ARIMA будет считаться устаревшей в следующем выпуске). Таким образом, вы должны использовать

from statsmodels.tsa.api import SARIMAX
model = SARIMAX(timeseries, order=(1, 0, 6))
...

. Тогда у объекта результатов будут методы с именами extend и append, которые позволят вам создать новый объект результатов, который будет расширен вашими новыми значениями. В разделе «Перекрестная проверка» этого примера записной книжки есть несколько примеров использования extend.

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