#install.packages("forecast")
#install.packages("readxl")

library(forecast)
library(readxl)

datos <- read_excel("/Users/anapaualvear/Downloads/Ventas_Históricas_Lechitas.xlsx")
## New names:
## • `` -> `...1`
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...5`
## • `` -> `...6`
datos
## # A tibble: 14 × 6
##    ...1  ...2               ...3  Ventas históricas de leche sabor…¹ ...5  ...6 
##    <chr> <chr>              <chr> <chr>                              <chr> <chr>
##  1 <NA>  <NA>               <NA>  (Miles de dólares)                 <NA>  <NA> 
##  2 Mes   Ventas             Mes   Ventas                             Mes   Vent…
##  3 42736 25520.511307767953 43101 28463.692232055062                 43466 3249…
##  4 42767 23740.108161258602 43132 26996.106194690263                 43497 3128…
##  5 42795 26253.584070796463 43160 29768.195673549657                 43525 3337…
##  6 42826 25868.431661750274 43191 29292.512291052099                 43556 3294…
##  7 42856 27072.866273352989 43221 29950.683382497562                 43586 3400…
##  8 42887 27150.496558505416 43252 30099.169124877102                 43617 3375…
##  9 42917 27067.104228121931 43282 30851.263520157321                 43647 3292…
## 10 42948 28145.250737463146 43313 32271.755162241905                 43678 3432…
## 11 42979 27546.288102261537 43344 31940.737463126836                 43709 3515…
## 12 43009 28400.368731563431 43374 32995.929203539818                 43739 3613…
## 13 43040 27441.981317600799 43405 32197.118977384478                 43770 3479…
## 14 43070 27852.472959685354 43435 31984.81809242873                  43800 3484…
## # ℹ abbreviated name: ¹​`Ventas históricas de leche saborizada Hershey México`
serie_de_tiempo <- ts(data = ventas, start = c(2017,1), frequency = 12)
serie_de_tiempo
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2017       NA       NA 25520.51 23740.11 26253.58 25868.43 27072.87 27150.50
## 2018 27441.98 27852.47       NA       NA 28463.69 26996.11 29768.20 29292.51
## 2019 31940.74 32995.93 32197.12 31984.82       NA       NA 32496.44 31287.28
## 2020 32927.30 34324.12 35151.28 36133.07 34799.91 34846.17                  
##           Sep      Oct      Nov      Dec
## 2017 27067.10 28145.25 27546.29 28400.37
## 2018 29950.68 30099.17 30851.26 32271.76
## 2019 33376.02 32949.77 34004.11 33757.89
## 2020
## Series: serie_de_tiempo 
## ARIMA(1,1,0) with drift 
## 
## Coefficients:
##           ar1     drift
##       -0.6090  261.0375
## s.e.   0.1357   87.6172
## 
## sigma^2 = 805142:  log likelihood = -287.68
## AIC=581.35   AICc=582.04   BIC=586.34
## Series: serie_de_tiempo 
## ARIMA(1,1,0) with drift 
## 
## Coefficients:
##           ar1     drift
##       -0.6090  261.0375
## s.e.   0.1357   87.6172
## 
## sigma^2 = 805142:  log likelihood = -287.68
## AIC=581.35   AICc=582.04   BIC=586.34
## 
## Training set error measures:
##                     ME     RMSE      MAE       MPE     MAPE      MASE      ACF1
## Training set -1.856471 859.0965 708.1723 0.6295701 2.253283 0.2580507 0.0357682
##          Point Forecast    Lo 95    Hi 95
## Jul 2020       35760.09 34001.42 37518.76
## Aug 2020       35941.46 34053.15 37829.77
## Sep 2020       36251.02 33935.62 38566.41
## Oct 2020       36482.51 33982.58 38982.43
## Nov 2020       36761.54 33995.16 39527.92
## Dec 2020       37011.62 34057.17 39966.06
## Jan 2021       37279.33 34117.24 40441.42
## Feb 2021       37536.30 34197.34 40875.26
## Mar 2021       37799.81 34282.57 41317.06
## Apr 2021       38059.34 34378.45 41740.24
## May 2021       38321.30 34480.22 42162.38
## Jun 2021       38581.78 34588.99 42574.56

serie_limpia <- na.interp(serie_de_tiempo)
serie_limpia
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2017 24227.51 24910.96 25520.51 23740.11 26253.58 25868.43 27072.87 27150.50
## 2018 27441.98 27852.47 28741.50 28903.49 28463.69 26996.11 29768.20 29292.51
## 2019 31940.74 32995.93 32197.12 31984.82 31457.87 31192.53 32496.44 31287.28
## 2020 32927.30 34324.12 35151.28 36133.07 34799.91 34846.17                  
##           Sep      Oct      Nov      Dec
## 2017 27067.10 28145.25 27546.29 28400.37
## 2018 29950.68 30099.17 30851.26 32271.76
## 2019 33376.02 32949.77 34004.11 33757.89
## 2020
serie_limpia <- na.interp(serie_de_tiempo)
serie_limpia
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2017 24227.51 24910.96 25520.51 23740.11 26253.58 25868.43 27072.87 27150.50
## 2018 27441.98 27852.47 28741.50 28903.49 28463.69 26996.11 29768.20 29292.51
## 2019 31940.74 32995.93 32197.12 31984.82 31457.87 31192.53 32496.44 31287.28
## 2020 32927.30 34324.12 35151.28 36133.07 34799.91 34846.17                  
##           Sep      Oct      Nov      Dec
## 2017 27067.10 28145.25 27546.29 28400.37
## 2018 29950.68 30099.17 30851.26 32271.76
## 2019 33376.02 32949.77 34004.11 33757.89
## 2020
descomposicion <- decompose(serie_limpia)
plot(descomposicion)

modelo <- auto.arima(serie_limpia)
summary(modelo)
## Series: serie_limpia 
## ARIMA(1,1,0) with drift 
## 
## Coefficients:
##           ar1     drift
##       -0.5051  257.2301
## s.e.   0.1316   92.6814
## 
## sigma^2 = 825015:  log likelihood = -336.57
## AIC=679.15   AICc=679.79   BIC=684.29
## 
## Training set error measures:
##                    ME    RMSE     MAE         MPE     MAPE      MASE
## Training set 4.306846 875.263 725.518 -0.02261328 2.429064 0.2414373
##                     ACF1
## Training set -0.05684386
pronostico <- forecast(modelo, h = 12)
plot(pronostico)