1. Introducción o descripción del trabajo a realizar
El presente trabajo corresponde a la primera parte del proyecto del curso Series de Tiempo, cuyo propósito es realizar un análisis descriptivo con apoyo gráfico y aplicar los conceptos vistos en clase a series temporales reales obtenidas de fuentes oficiales de datos públicos. En este caso, se seleccionó una base de datos proveniente del Ministerio de Agricultura y Desarrollo Rural de Colombia (Agronet), que contiene información sobre el comportamiento histórico del precio y el volumen de producción de un producto agrícola en el país.
El objetivo general de este análisis es explorar el comportamiento temporal del precio y el volumen, identificando sus tendencias, variaciones interanuales y posibles patrones estacionales que permitan comprender la dinámica del mercado agrícola a nivel nacional.
Para ello, se utiliza el software R, herramienta fundamental en el análisis estadístico y de series temporales. En esta primera etapa se desarrolla el análisis descriptivo, empleando medidas estadísticas, gráficos exploratorios y pruebas de estacionariedad que facilitan la interpretación del comportamiento de las variables en estudio.
Descripcion de la base de datos. La base de datos (Precio y volumen de comercialización de productos lácteos por departamento (leche en polvo entera)) empleada en este trabajo proviene del portal oficial del Ministerio de Agricultura y Desarrollo Rural de Colombia (Agronet), en el apartado de Estadísticas Agrícolas (https://www.agronet.gov.co/estadistica/Paginas/home.aspx?cod=9).
Esta base contiene información sobre la producción agropecuaria nacional, desagregada por producto, departamento y periodo temporal. Para este análisis se seleccionó el producto “Leche en polvo entera” en el departamento de Antioquia, con registros mensuales comprendidos entre los años 2007 y 2015. Las variables principales consideradas son el precio (expresado en pesos colombianos por tonelada) y el volumen de producción (en toneladas). Esta información permite estudiar la evolución temporal del mercado lácteo en la región, identificar patrones de comportamiento, tendencias y posibles relaciones entre los niveles de producción y las variaciones de precio a lo largo del tiempo.
A continuación se muestra como está estructurada la base de datos.
Aquí se visualiza un encabezado de como esta constituida la base de datos, en total son 108 observaciones, tambien 10 variables tanto cualitativas como cuantitativas.
| Variable | n | media | mediana | sd | min | max |
|---|---|---|---|---|---|---|
| Año | 108 | 2011.00 | 2011.00 | 2.59 | 2007.00 | 2015 |
| Precio | 108 | 10806.29 | 10879.93 | 658.57 | 8538.37 | 12266 |
| Variación Precio (%) | 108 | 0.14 | 0.00 | 5.36 | -21.00 | 31 |
| Variación Volúmen (%) | 108 | 3.56 | 2.50 | 23.44 | -40.00 | 56 |
| Volúmen | 108 | 1316469.99 | 1305483.00 | 289769.93 | 870752.36 | 2337662 |
La base de datos presenta información de 108 observaciones entre los años 2007 y 2015. El precio promedio es de 10,806 , con una ligera dispersión (sd = 658), lo que indica estabilidad en el valor a lo largo del periodo. El volumen promedio es de 1,316,470 unidades, con una desviación estándar de 289,770, lo que refleja una producción considerable y con variaciones moderadas entre los años.
El análisis descriptivo permite observar el comportamiento general de las variables numéricas incluidas en la base de datos. En términos generales, los valores medios y medianas son cercanos, lo que sugiere una distribución aproximadamente simétrica en la mayoría de las variables. Las desviaciones estándar indican que existe variabilidad moderada en los datos, destacando aquellas variables relacionadas con el volumen, que presentan una mayor dispersión.
Por su parte, las variables asociadas al precio muestran valores más estables, lo que refleja consistencia en el comportamiento del mercado durante el periodo analizado. En conjunto, los resultados indican que los cambios más significativos se presentan en los volúmenes de producción o comercialización, mientras que los precios tienden a mantener un comportamiento más uniforme a lo largo del tiempo.
De manera de continuar con proyecto, debemos elegir dos series de y aplicar lo visto en el curso de series de tiempo. Las series (variable) que elegí fueron precio y volumen.
| Variable | n | Media | Mediana | Desviación | Mínimo | Máximo |
|---|---|---|---|---|---|---|
| Precio | 108 | 10806.29 | 10879.93 | 658.57 | 8538.37 | 12266 |
| Volúmen | 108 | 1316469.99 | 1305483.00 | 289769.93 | 870752.36 | 2337662 |
Aquí se realiza o se calcula medidas de tendencia centrales y de dispercion. los valores corresponden a los mismos del analisis descriptivo anterior.
Conclusión descriptiva:
El análisis descriptivo muestra que el precio promedio se mantiene estable a lo largo del periodo, con una variabilidad relativamente baja, lo que sugiere que el mercado ha sido consistente en sus valores de comercialización. En contraste, el volumen presenta una media considerable y una dispersión más alta, indicando fluctuaciones más notorias en la producción o venta del producto. En conjunto, los resultados sugieren que mientras el precio ha mostrado estabilidad, el volumen refleja mayores cambios o variabilidad, posiblemente asociados a factores estacionales, de oferta o condiciones del mercado.
En esta grafica se puede evidenciar el comportamiento de la variable “precio” a lo largo del periodo 2007-2015, se observa que del año 2007 al 2009 hubo un inclemento y apartir de ahí comienza a decrecer hatas más o menos finales de 2010 que posteriormente al siguiente año comienza nuevamentea incrementar. Pero en adelante tambien se tota un comportamiento de subidas y bajadas.
A diferencia de la variable anterior (precio), esta variable “volumen” se obcerva un comportaiento mas irregular, con subidas y bajadas muy repetitivas a lo largo del periodo.
El diagrama de caja del Precio muestra que la mayoría de los valores se concentran entre aproximadamente 10.000 y 11.500, con una mediana cercana a 10.900, lo que indica estabilidad en los precios a lo largo del tiempo. Se observan algunos valores atípicos tanto por debajo como por encima del rango intercuartílico.
Por otro lado, el diagrama de caja del Volúmen revela una mayor dispersión, con una mediana alrededor de 1.300.000 y varios valores atípicos superiores, lo que evidencia que en algunos periodos hubo incrementos significativos en la producción o comercialización del producto. En general, el volumen presenta una variabilidad más alta que el precio, lo que podría estar relacionado con dinámicas estacionales o ajustes en los niveles de producción.Tambien se observan algunos datos atipicos pero solo por encima del rango intercuantilico.
El histograma muestra que los valores de Precio se concentran principalmente alrededor de una zona central, lo que indica una distribución aproximadamente simétrica. La curva de densidad refuerza esta observación. Se quiere saber cual distribución se ajusta mejor a los datos, el cual se utiliza los estadistico AIC y BIC que me permiten determinar cual distribución se ajusta mejor.
Los criterios AIC (Criterio de Información de Akaike) y BIC (Criterio de Información Bayesiano) se utilizan para comparar modelos estadísticos y determinar cuál tiene mejor desempeño. Ambos combinan el grado de ajuste del modelo con una penalización por el número de parámetros utilizados.
Donde:
- k es el número de parámetros del modelo.
- n es el número de observaciones.
- log(verosimilitud) mide qué tan bien se ajusta el modelo a
los datos.
De igual manera se realiza un diagrama con curva de densidad para la variable volúmen que posteriormete tambien se utilizaran los criterios para ver que distribución se ajusta mejor a estos datos.
La función fitdist() del paquete fitdistrplus en R permite ajustar diferentes distribuciones teóricas a un conjunto de datos continuos o discretos(en este caso continuos), estimando los parámetros de cada distribución mediante métodos de máxima verosimilitud. Su objetivo es identificar qué distribución describe mejor el comportamiento de la variable analizada. Para comparar los modelos ajustados se utilizan criterios estadísticos como el AIC (Akaike Information Criterion) y el BIC (Bayesian Information Criterion), los cuales combinan la calidad del ajuste con una penalización por la complejidad del modelo. En ambos casos, el modelo con el valor más bajo de AIC y BIC se considera el más adecuado, ya que representa un mejor equilibrio entre ajuste y simplicidad, describiendo de forma más precisa la distribución real de los datos.
En el caso de los datos de precio, la que valor mas bajo de AIB y BIC lo presenta es el modelo Weibull, lo que nos indica que la distribución que mejor se ajusta a estos datos es la Weibull.
Aquí se observa de manera grafica las distintas distribuciones, con el fin de que se pueda apreciar de manera visual cual es la que mejor se ajusta a los datos. Y tambien se indentifica que la mas obtima es la distribución Weimbull.
Aquí se aplicó nuevamente los criterios estadísticos AIC y BIC con la finalidad de indentificar que distribución se ajusta mejor para la variable volumen. Se observó que el modelo que presenta AIB y BIC mas bajo es el Log-normal, lo que indica que este es el que se ajusta mejor a estos datos.
De manera visual tambien se evidensea que de las ditribuciones la que mejor se ajusta a los datos es la Log-normal.
ahora convertimos las variables a series.
Se grafica para ver el comportamiento de la serie “precio”.
Para verificar si las series temporales de Precio y
Volumen son estacionarias, se aplica el test de
KPSS (Kwiatkowski–Phillips–Schmidt–Shin).
Según Kwiatkowski et al. (1992), el test KPSS permite comprobar si una serie es estacionaria o no, contrastando la hipótesis nula de estacionariedad frente a la alternativa de presencia de una raíz unitaria.
##
## KPSS Test for Level Stationarity
##
## data: precio_ts
## KPSS Level = 0.75556, Truncation lag parameter = 4, p-value = 0.01
El test kpss plantea las siguientes hipótesis:
El criterio de decisión es el siguiente:
Si el p-valor < 0.05, se rechaza H₀, concluyendo que la serie no es estacionaria.
Si el p-valor ≥ 0.05, no se rechaza H₀, por lo que la serie se considera estacionaria.
En este caso, dado que el p-valor = 0.01 es menor que 0.05, se rechaza la hipótesis nula. por lo tanto, se concluye que la serie no es estacionaria.
Tambien se grafica la serie volúmen para observar su comportamiento.
##
## KPSS Test for Level Stationarity
##
## data: volumen_ts
## KPSS Level = 1.2668, Truncation lag parameter = 4, p-value = 0.01
Se le aplica el test kpss a la serie volúmen para ver si es estacionaria y esto fue lo que se obtuvo.
El resultado del test para la serie Volumen arrojó un p-valor =
0.01.
En este caso, el p-valor tambien es menor que 0.05, por lo que se
rechaza la hipótesis nula.
Se concluye que la serie de Volumen no es estacionaria.
Luego, Antes de aplicar las diferencias para volver la serie a estacionaria, descomponemos la serie. Existen dos tipo de descomposición, de manera multiplicativa y de manera aditiva. En este caso se realiza esta ultima
Se realiza descomposición para analizar el comportamiento interno de
la serie, en el cual: - Tendencia (Trend): refleja la
evolución general de la serie a lo largo del tiempo.
- Estacionalidad (Seasonal): muestra los patrones que
se repiten de forma periódica.
- Residuo (Random): representa la variación aleatoria
no explicada por los componentes anteriores.
Posterior a esto, queremos saber o determinar cuantas veces hay que diferenciar la serie para que se vuelva estacionaria. La función ndiffs() analiza cada serie y calcula el número mínimo de diferenciaciones necesarias para que la serie se vuelva estacionaria, osea: Si devuelve 0, la serie ya es estacionaria. Si devuelve 1, se debe aplicar una diferencia. Si devuelve 2, se requiere dos diferencias.
## [1] 1
## [1] 1
## Diferencias necesarias para Precio: 1
## Diferencias necesarias para Volumen: 1
Al aplicar el test kpss, los resultados mostraron que ambas series no eran estacionarias.
Luego al emplear la función ndiffs, se obtuvo que ambas series requieren al menos una diferencia (d = 1) para alcanzar la estacionariedad.
Aquí se aplicó una diferencia a la serie precio con el fin de volverla estacionaria.
##
## KPSS Test for Level Stationarity
##
## data: convertir_precio
## KPSS Level = 0.11761, Truncation lag parameter = 4, p-value = 0.1
Se aplica nuevamenete el test de kpss para corroborar por medio del p-valor si la serie ya es estacionaria. Y como el p_valor = 0.1 es mayor que 0.05 por lo que no se rechaza la hipótesis nula. lo que nos indica que la serie es estacionaria.
Y así que ve de manera visual el comportamiento de la serie (precio) ya siendo estacionaria.
Seguidamente, aplicamos una diferencia a la serie volúmen con el fin de volverla estacionaria.
##
## KPSS Test for Level Stationarity
##
## data: convertir_volumen
## KPSS Level = 0.071859, Truncation lag parameter = 4, p-value = 0.1
Se aplica nuevamente el test kpss para verificar si ya es estacionaria la serie, y como el p-valor = 0.1 es mayor que 0.05 entonces no se rechaza la hipótesis nula, lo que nos indica que la serie es estacionaria.
Se grafica nuevamente la serie volumen, pero ya estacionaria para ver como es su comportamiento.
Realizamos la funciòn de autocorrelación (FAC) y la función de autocorrelación parcial (FACP) para ambas serie estacionarias.
A partir del análisis gráfico del correlograma, se puede evidenciar que la serie diferenciada del precio presenta un comportamiento estacionario, con autocorrelaciones que disminuyen rápidamente.
En el FAC, se observa un pico negativo fuerte en el primer rezago, seguido de valores que se mantienen dentro de los límites de confianza.
En la FACP, se observa también un pico negativo en el primer rezago, con los demás valores cercanos a cero.
En esta etapa del análisis, se procederá a comparar distintos modelos de ajuste para las series, con el fin de determinar cuál describe mejor su comportamiento. Para ello, se utilizarán los criterios de información Akaike (AIC) y Bayesiano (BIC), los cuales permiten evaluar la calidad de los modelos considerando tanto el ajuste a los datos como la complejidad del modelo. Un valor menor de AIC o BIC indica un mejor equilibrio entre precisión y simplicidad, por lo que estos indicadores son herramientas fundamentales en la selección de modelos estadísticos.
Los modelos ARMA solo pueden aplicarse a series estacionarias; sin embargo, la mayoría de las series temporales reales presentan tendencias o componentes no estacionarios. En estos casos, se recurre a los modelos ARIMA (p, d, q), que extienden los ARMA incorporando la diferenciación de orden d para eliminar la no estacionariedad y permitir un modelamiento adecuado de la estructura temporal.
Según Luceño (2008), los modelos ARIMA representan una herramienta flexible y ampliamente utilizada para analizar procesos no estacionarios que, tras una o varias diferenciaciones, se comportan como estacionarios.
Entonces se realiza las comparaciones para identificar que modelo se ajusta mejor a cada serie, tanto para cuando no son estacionaria como para acuando ya lo son.
Debido a que las series inicialmente no son estacionarias, se requiere a que se le realice por lo menos una diferencia para que lo sean, estonces estas serie se sabe que serian ARIMA. Devido a esto, en esta parte se le realiza las comparaciones para identificar que modelo se ajusta mejor a las series ya estacionarias.
Aplicamos la función auto.arima
## Series: convertir_precio
## ARIMA(0,0,1) with zero mean
##
## Coefficients:
## ma1
## -0.1967
## s.e. 0.1005
##
## sigma^2 = 135582: log likelihood = -783.57
## AIC=1571.14 AICc=1571.26 BIC=1576.49
Aquí se aprecia que el modelo que mejor se ajusta a la serie precio es un ARIMA (0,0,1), Debido a que anteriormente se le aplicó una disferencia a la serie para volverla estacionaria.
## Series: convertir_volumen
## ARIMA(0,0,1) with zero mean
##
## Coefficients:
## ma1
## -0.7624
## s.e. 0.0750
##
## sigma^2 = 57205905138: log likelihood = -1476.95
## AIC=2957.9 AICc=2958.02 BIC=2963.25
De igual manera, para la serie diferenciada volúmen, el modelo que mejor se ajusta tambien es un ARIMA (0,0,1)
Referencias bibliográficas
Kwiatkowski, D., Phillips, P. C., Schmidt, P., & Shin, Y. (1992). Testing the null hypothesis of stationarity against the alternative of a unit root: How sure are we that economic time series have a unit root?. Journal of econometrics, 54(1-3), 159-178. https://elischolar.library.yale.edu/cgi/viewcontent.cgi?article=2221&context=cowles-discussion-paper-series
Luceño, A., & Peña, D. (2008). Autoregressive integrated moving average (ARIMA) modeling. Encyclopedia of Statistics in Quality and Reliability. https://scholar.google.com/scholar?hl=es&q=Luce%C3%B1o+2008+ARIMA+Wiley