Introducción:

Este informe analiza la serie de tiempo de las ventas mensuales (en miles de dólares) de Café Borinquen desde enero de 2015 hasta diciembre de 2025. El propósito es ofrecer a la gerencia información estadística confiable que apoye la planificación de personal, estrategias de mercadeo y decisiones relacionadas con la expansión prevista para 2026.

Para ello, se realiza un análisis exploratorio que incluye visualización del comportamiento histórico, identificación de tendencia y estacionalidad, y descomposición de la serie. Luego, se evalúa la estacionariedad y se ajustan distintos modelos de series de tiempo (AR, MA, ARMA y ARIMA), comparándolos mediante el criterio AIC para seleccionar el modelo más adecuado. Finalmente, se generan una predicción para los doce meses de 2026 junto con sus intervalos de confianza.

Este proceso permitirá comprender la dinámica de las ventas en el pasado y producir proyecciones útiles para apoyar decisiones estratégicas de la empresa.

1. Exploración visual inicial de la base de datos

install.packages(c("forecast", "ggplot2"))
library(forecast)
library(ggplot2)

#Comportamiento general de la serie de Tiempo 
data <- read.csv("Cafe_Borinquen.csv")
ventas.ts <- ts(data$ventas, start= c(2015, 1), frequency=12)
ventas.ts
##        Jan   Feb   Mar   Apr   May   Jun   Jul   Aug   Sep   Oct   Nov   Dec
## 2015 236.3 250.4 253.2 242.4 246.1 280.6 279.6 284.6 257.5 245.7 240.9 245.3
## 2016 254.0 256.1 255.0 256.7 280.5 289.0 289.0 281.4 262.8 262.6 258.2 254.5
## 2017 265.7 268.4 270.3 267.0 288.8 301.7 300.0 292.3 274.6 269.7 268.3 267.3
## 2018 278.8 279.6 283.7 285.5 304.7 316.0 315.0 309.7 286.2 283.6 282.0 282.4
## 2019 292.2 294.8 296.0 294.9 318.2 329.1 328.8 326.1 299.9 296.4 295.4 295.1
## 2020 307.8 306.1 310.9 311.8 335.6 347.4 348.7 342.4 316.3 313.5 313.9 310.2
## 2021 321.9 324.3 326.8 327.7 353.8 364.2 366.5 359.2 332.9 330.5 329.0 329.5
## 2022 339.7 343.0 347.2 348.9 372.9 382.5 384.4 378.7 351.7 349.5 347.0 347.5
## 2023 357.3 358.8 364.4 362.7 387.2 397.0 399.8 394.7 366.1 363.6 363.4 362.4
## 2024 373.9 374.7 379.3 382.5 407.7 416.5 420.0 415.2 389.1 389.7 405.9 381.7
## 2025 385.4 391.0 397.2 402.7 406.5 407.7 406.4 403.3 399.5 396.4 395.1 396.4
summary(data$ventas)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   236.3   283.3   323.1   325.7   366.2   420.0

Interpretación

La serie contiene 132 observaciones mensuales (11 años x 12 meses), correspondientes a las ventas de Café Borinquen entre 2015 y 2025. Con valores que van desde 236.3 mil dólares, hasta un máximo de 420.0 mil dólares, reflejando variaciones importantes en la demanda a lo largo del tiempo.

Comportamiento general de la serie de tiempo

#Comportamiento general de la serie de Tiempo 


plot(ventas.ts,
     ylab = "ventas",
     xlab = "fecha",
     col = "darkgreen",
       lwd = 2)

Interpretación

La serie muestra una tendencia creciente, lo que indica que las ventas de Café Borinquen han aumentado consistentemente desde 2015. También se puede observar un patrón estacional (repitiendo cada año), con subidas y bajas regulares en los mismos meses. También, se observa que en el 2024 ocurren fluctuaciones más marcadas con caídas pero después vuelve a recuperarse. Este modelo cumple con una tendencia positiva y una estacionalidad clara

Descomposición en tendencia, estacionalidad y residuales

#descomposición
descomp <- decompose(ventas.ts)
plot(descomp)

Interpretación:

Tendencia:

La tendencia muestra un crecimiento sostenido en ventas a lo largo del periodo estudiado, lo que confirma que la empresa ha estado en un aumento constante de su demanda de manera progresiva.

Estacionalidad:

Se observa un patrón estacional claro, con picos y caídas que se repiten cada año . Lo que podemos concluir es que ciertos meses presentan consistentemente mayores ventas mientras otros son más bajos.

Componente aleatorio:

Los residuales muestran fluctuaciones irregulares que no siguen un patrón específico llegando al año 2024. Estas variaciones pueden representar factores inesperados o eventos puntuales que afectaron las ventas en el corto plazo.

Estacionalidad y autocorrelación

#Estacionalidad
monthplot(ventas.ts,
          main = "Patrón estacional mensual",
          ylab = "Ventas (miles de dolares)")

Interpretación

Este gráfico muestra que las ventas del Café Borinquen presentan un patrón estacional estable, con variaciones que se repiten cada año. Aunque algunos meses registran niveles de ventas consistentemente más altos, también hay otros meses que muestran reducciones moderadas. Lo que se concluye es que la demanda del café fluctúa de acuerdo con la época del año.

#Autocorrelación
acf(ventas.ts,lag.max = 12, main = "Autocorrelación (ACF)")

pacf(ventas.ts,lag.max = 12, main = "Autocorrelación Parcial (PACF)")

Interpretación

El gráfico de autocorrelación muestra que los valores de autocorrelación son significativamente positivos en las primeras posiciones, lo que indica que las ventas de un mes se parecen mucho a las de los meses anteriores. Esta relación fuerte y persistente sugiere que la serie mantiene una continuidad marcada en el tiempo.Viendo las tendencias del gráfico viendo que los valores son muy altos se puede decir que el modelo es no estacionario pero no es seguro así que tenemos que continuar con otras preubas para aseguranos que es correcto.

2. Selección y ajuste del modelo

En esta sección se evalúa si la serie es estacionaria y, de no serlo, se aplican las transformaciones necesarias para estabilizarla. Luego, se ajustan distintos modelos de series de tiempo (AR, MA, ARMA y ARIMA) y se comparan mediante el criterio AIC con el fin de seleccionar el modelo que mejor representa el comportamiento de las ventas.

Prueba de estacionariedad

#Prueba de estacionariedad
library(forecast)
library(tseries)
adf.test(ventas.ts)
## 
##  Augmented Dickey-Fuller Test
## 
## data:  ventas.ts
## Dickey-Fuller = -8.3348, Lag order = 5, p-value = 0.01
## alternative hypothesis: stationary

Hipotesis

\(H_0\): la serie no es estacionaria
\(H_1\): la serie es estacionaria

Intepretación

El ADF Test arrojó un p-value de 0.01, por lo que se rechaza la hipótesis nula y se concluye que la serie es estacionaria según la prueba. No obstante, debido a la presencia visual de tendencia y estacionalidad, se procede con la evaluación de modelos ARIMA.

Ajuste los modelos posibles

modelo.ar <- arima(ventas.ts, order = c(1,0,0))
modelo.ma <- arima(ventas.ts, order = c(0,0,1))
modelo.arma <- arima(ventas.ts, order = c(1,0,1))

modelo.arima <- auto.arima(ventas.ts,stepwise = T, approximation = T)
modelo.arima
## Series: ventas.ts 
## ARIMA(2,0,1)(1,1,1)[12] with drift 
## 
## Coefficients:
##          ar1     ar2     ma1     sar1     sma1   drift
##       0.4391  0.0897  0.2442  -0.2147  -0.4845  1.2623
## s.e.  0.9784  0.6371  0.9650   0.3413   0.3240  0.0512
## 
## sigma^2 = 28.71:  log likelihood = -371.96
## AIC=757.93   AICc=758.93   BIC=777.44

Interpretación

Los resultados del criterio AIC indican que el modelo con mejor desempeño para las ventas de Café Borinquen es el ARIMA(2,0,1) con drift, ya que obtuvo un AIC de 757.93, el valor más bajo entre los modelos evaluados. Esto significa que ofrece el mejor equilibrio entre ajuste y complejidad. Además, este modelo logra capturar de forma adecuada la tendencia y la estacionalidad presentes en los datos, por lo que se selecciona como el modelo final para realizar los pronósticos.

Comparación del AIC para seleccionar el modelo final

AIC(modelo.ar,modelo.ma,modelo.arma, modelo.arima)
##              df       AIC
## modelo.ar     3 1023.5257
## modelo.ma     3 1262.1731
## modelo.arma   4 1016.2179
## modelo.arima  7  757.9274

Interpretación

La comparación de los valores AIC muestra que el modelo ARIMA es el que ofrece el mejor desempeño, con un valor de AIC = 757.93, significativamente menor que los obtenidos por los modelos AR, MA y ARMA.

3. Pronósticos

Pronóstico para enero a diciembre 2026 usando ARIMA

pronostico <- forecast(modelo.arima, h = 12)
print(pronostico)
##          Point Forecast    Lo 80    Hi 80    Lo 95    Hi 95
## Jan 2026       404.5957 397.7287 411.4628 394.0935 415.0980
## Feb 2026       406.0747 397.7578 414.3917 393.3551 418.7944
## Mar 2026       410.6106 401.8737 419.3474 397.2487 423.9724
## Apr 2026       412.9586 404.0772 421.8400 399.3757 426.5415
## May 2026       431.2326 422.3015 440.1636 417.5737 444.8914
## Jun 2026       438.0535 429.1052 447.0019 424.3682 451.7388
## Jul 2026       439.6108 430.6564 448.5652 425.9163 453.3054
## Aug 2026       435.0343 426.0778 443.9908 421.3365 448.7320
## Sep 2026       415.1371 406.1799 424.0943 401.4382 428.8360
## Oct 2026       413.5634 404.6059 422.5209 399.8641 427.2627
## Nov 2026       418.6733 409.7157 427.6309 404.9739 432.3727
## Dec 2026       410.1467 401.1891 419.1042 396.4472 423.8461

En este pronóstico, observamos ciertas predicciones de las ventas mensuales de Café Borinquen para el año 2026, en base al modelo ARIMA que construimos. El pronóstico cumple con la estacionalidad observada, con valores de las ventas mensuales aumentando hasta el mes de julio y luego decreciendo un poco, siendo mayor el valor de diciembre que el de enero. El Lo y Hi 80 representan los límites inferiores y superiores respectivamente de un intervalo de confianza, con confianza del 80%. Lo mismo para el Lo/Hi de 95, pero con un 95% de confianza. Ambos coinciden con la estacionalidad observada en lña serie de tiempo.

autoplot(pronostico)

En esta gráfica, tenemos el tiempo en el eje de x y las ventas en eleje de y. Esta gráfica proporciona una línea recta que representa los valores reales de la serie de tiempo desde 2015 hasta 2025. El sombreado azul alrededor de la línea representa el intervalo de confianza de nuestro pronóstico que, como podemos observar, continúa con la tendencia y estacionalidad observada.