Introducción a los modelos ARIMA

Modelos ARIMA en Python

James Fulton

Climate informatics researcher

Resumen: series temporales no estacionarias

Modelos ARIMA en Python

Resumen: series temporales no estacionarias

Modelos ARIMA en Python

Pronóstico de la serie diferenciada

Modelos ARIMA en Python

Reconstruir la serie original tras diferenciar

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

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

Reconstruir la serie original tras 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 en Python

Reconstruir la serie original tras diferenciar

Modelos ARIMA en Python

El modelo ARIMA

 

  • Toma la diferencia
  • Ajusta un modelo ARMA
  • Integra el pronóstico

¿Podemos evitar tanto trabajo?

¡Sí!

ARIMA - Autoregressive Integrated Moving Average

Modelos ARIMA en Python

Usar el modelo ARIMA

from statsmodels.tsa.arima.model import ARIMA

model = ARIMA(df, order=(p,d,q))
  • p: número de retardos autorregresivos
  • d: orden de diferenciación
  • q: número de retardos de media móvil

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

Modelos ARIMA en Python

Usar el modelo ARIMA

# Create model
model = ARIMA(df, order=(2,1,1))

# Fit model model.fit()
# Make forecast mean_forecast = results.get_forecast(steps=10).predicted_mean
Modelos ARIMA en Python

Usar el modelo ARIMA

# Make forecast
mean_forecast = results.get_forecast(steps=steps).predicted_mean

Modelos ARIMA en Python

Elegir el orden de diferenciación

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 en Python

Elegir el orden de diferenciación

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

¡Vamos a practicar!

Modelos ARIMA en Python

Preparing Video For Download...