Análisis de series de tiempo con ARIMA para el pronóstico de la producción del petróleo crudo en México.
En este artículo se realiza el pronóstico de la producción de petróleo crudo en México tomando en cuenta datos de activos de producción bloques de agua someras desde el año 2005 hasta el 2018. Se realiza con modelos de series de tiempo ARIMA usando python. Los datos se obtienen de la página de datos libres del gobierno federal https://datos.gob.mx/
Un factor clave para realizar análisis de series de tiempo y concretamente para realizar una predicción, es que los valores medidos deben ser constantes en el tiempo, que no cambien con respecto a (t). En una extrapolación determinista se puede asumir que una de sus derivadas es constante. La suposición de una primera derivada constante conduce a una extrapolación lineal como medio de predicción. En el análisis de series de tiempo la meta es predecir una serie que no es determinista pero que contiene componentes aleatorios utilizando técnicas para transformar dichos componentes de tal forma que la series de tiempo se convierta en una serie estacionaria.
El modelo ARIMA por sus siglas en inglés (Autoregressive Integrated Moving-Average) es un método que utiliza la integración de dos modelos: un modelo autorregresivo (AR) y la media móvil (MA) para realizar predicciones sobre una serie de tiempo no estacionaria convirtiendo ésta en estacionaria. Para esto se deben de tomar en cuenta ciertas condiciones:
1 . Los datos deben de ser estacionarios — Que la variable medida no dependa del tiempo.
2. Los datos deben de ser univariados — Que los datos solamente dependan de una variable.
3. Con lo anterior obtener los parámetros P, Q y D, necesarios para el modelo.
MODELO
Para iniciar se cargan las paqueterías y los datos que previamente se descargan de la página del gobierno. Se limpian para tener un mejor manejo de la información.

Después de leer los datos se obtienen una tabla como la que se muestra a continuación.

El data frame se muestra la cantidad de miles de barriles de petróleo crudo que se producen mensualmente en las diferentes zonas de producción. En general, estas zonas de producción se dividen en Activos de Producción, por ejemplo: el activo de producción bloques de aguas someras AS01, donde se encuentra el complejo Cantarell, Aka, Ek, etc. asimismo existe el activo de producción AS02, Activo Norte y Activo Sur.
Se toman solamente las filas de los activos de producción AS01, AS02, NORTE, SUR y se grafican.




El activo de producción AS01 es el activo que mas ha generado desde el 2005, pero que tiene una tendencia decreciente hacia el 2018 (diagrama de pastel) , mientras que los demás activos de cierta forma se han mantenido más constantes, aunque también con cierta tendencia negativa después del 2015. Como el activo AS01 es el que tiene un comportamiento muy distinto al los demás se tomará para realizar el pronostico con ayuda del modelo ARIMA.
Obtener datos estacionales
Utilizando los datos del activo AS01 se grafica la media móvil y la desviación estándar móvil con una ventana de 12 que es el equivalente a una año para estos datos, para tener un componente visual y observar si son constantes.


El valor de la desviación estándar y de la media no son constantes, así que los datos no son estacionarios.
Para obtener que los datos sean estacionarios se necesita conseguir que la media y la varianza sean constantes y no dependan del tiempo. Se plantea que la hipótesis nula sea que la serie no es estacionaria, y para rechazar dicha hipótesis se aplicará un Dickey-Fuller Test donde se dice que sí el resultado del test es menor que el valor crítico la serie es estacionaria.

Una forma eficiente de hacer que la media y la varianza sean constantes es transformar la gráfica a valores logarítmicos.

Una transformación que elimina la tendencia (buscamos estacionariedad en la media) es la diferenciación.
La diferenciación nos permite eliminar la tendencia lineal a través de las diferencias regulares. Consiste simplemente en calcular la diferencia entre cada dato (en este caso mensual) y el anterior.
Se obtiene la diferencia entre los valores logaritmicos y diferenciados AS01_logDiffShift = AS01_logscale — AS01_logscale.shift() y se crea una función para obtener los valores del test en conjunto con la grafica para tener una interpretación visual.

En la gráfica se observan los valores originales diferenciados y su media que ya es más constante. Además en los resultados del test se aprecia que el valor del Test Statics es menor que el del valor crítico por lo tanto se rechaza la hipótesis nula y se dice que los datos son estacionarios.
Una vez que los datos están listos y satisfacen al modelo. Se deben de encontrar los valores P, Q y D para ajustar el modelo, tales parámetros deben ser valores enteros no negativos y se obtienen con ayuda de la función de auto-correlación y auto-correlación parcial, ACF y PACF respectivamente.

Obteniendo los siguientes gráficos

Para obtener el valor de P y Q se necesita observar cual es el valor donde la gráfica corta el cero, también puede ser de ayuda marcar niveles de confianza para +0 y -0. Se observa que el valor p corta cerca del valor 1 al giual que el valor q en ambas gráficas.
Lo que ahora se hace es simplemente es sustituir estos valores en el modelo ARIMA para generar el modelo. Los valores P, Q y D se emplean en el orden del modelo de la forma: order=(2,1,1).


El modelo generado con ARIMA se comporta bastante similar a los valores originales. Tomando estos valores se genera un pronóstico de como se comportarán los activos AS01 en los siguientes 10 años.


Se observa que la producción de barriles de petróleo crudo de los activos de producción AS01 sigue comportándose con una tendencia decreciente como se observó en los datos originales.
Conclusiones
En resumen:
- Se descargaron datos públicos de datos.gob.mx.
- Se limpiaron los datos para manejarlos más facilmente .
- Se obtuvieron gráficas para determinar el comportamiento de los datos.
- Se discutió sobre modelos autoregresivos.
- Se ajustó un modelo ARIMA a los datos.
- Se pronosticó la producción de barriles de petróleo crudo para las siguientes 10 años .
Los modelos de series de tiempo pueden ser una herramienta clave para pronosticar los valores futuros de cualquier indicador.