Introdução aos modelos ARIMA

Modelos ARIMA em Python

James Fulton

Climate informatics researcher

Recapitulando séries temporais não estacionárias

Modelos ARIMA em Python

Recapitulando séries temporais não estacionárias

Modelos ARIMA em Python

Previsão da série temporal diferenciada

Modelos ARIMA em Python

Reconstruindo a série original após diferenciar

diff_forecast = results.get_forecast(steps=10).predicted_mean

from numpy import cumsum
mean_forecast = cumsum(diff_forecast)
Modelos ARIMA em Python

Reconstruindo a série original após diferenciar

diff_forecast = results.get_forecast(steps=10).predicted_mean

from numpy import cumsum
mean_forecast = cumsum(diff_forecast) + df.iloc[-1,0]
Modelos ARIMA em Python

Reconstruindo a série original após diferenciar

Modelos ARIMA em Python

O modelo ARIMA

 

  • Tirar a diferença
  • Ajustar modelo ARMA
  • Integrar a previsão

Dá para evitar tanto trabalho?

Sim!

ARIMA - Autoregressive Integrated Moving Average

Modelos ARIMA em Python

Usando o modelo ARIMA

from statsmodels.tsa.arima.model import ARIMA

model = ARIMA(df, order=(p,d,q))
  • p - número de defasagens autorregressivas
  • d - ordem da diferenciação
  • q - número de defasagens de média móvel

ARIMA$(p,0,q)$ = ARMA$(p,q)$

Modelos ARIMA em Python

Usando o modelo ARIMA

# Criar modelo
model = ARIMA(df, order=(2,1,1))

# Ajustar modelo model.fit()
# Fazer previsão mean_forecast = results.get_forecast(steps=10).predicted_mean
Modelos ARIMA em Python

Usando o modelo ARIMA

# Fazer previsão
mean_forecast = results.get_forecast(steps=steps).predicted_mean

Modelos ARIMA em Python

Escolhendo a ordem da diferença

adf = adfuller(df.iloc[:,0])
print('ADF Statistic:', adf[0])
print('p-value:', adf[1])
ADF Statistic: -2.674
p-value: 0.0784
adf = adfuller(df.diff().dropna().iloc[:,0])
print('ADF Statistic:', adf[0])
print('p-value:', adf[1])
ADF Statistic: -4.978
p-value: 2.44e-05
Modelos ARIMA em Python

Escolhendo a ordem da diferença

model = ARIMA(df, order=(p,1,q))
Modelos ARIMA em Python

Vamos praticar!

Modelos ARIMA em Python

Preparing Video For Download...