
Series de Tiempo
0. Concepto
Una serie de tiempo es una colección de
observaciones sobre un determinado fenómeno efectuados en momentos de
tiempo sucesivos, usualmente equiespaciados.
Ejemplos de series de tiempo son:
1. Precio de acciones.
2. Niveles de inventario. 3. Rotación de personal. 4. Ventas. 5. PIB
(GDP).
1. Instalar paquetes y llamar
librerías
#install.packages("forecast")
library(forecast)
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
2. Crear la serie de tiempos
# Ejemplo: Los siguientes datos de producción trimestral
# inician en el primer trimestre de 2020.
# Se busca pronosticar la producción de los siguientes 5 trimestres.
produccion <- c(50,53,55,57,55,60)
serie_de_tiempo <- ts(data=produccion, start = c(2020,1), frequency = 4)
serie_de_tiempo
## Qtr1 Qtr2 Qtr3 Qtr4
## 2020 50 53 55 57
## 2021 55 60
3. Crear el modelo ARIMA
ARIMA significa AutoRegressive Integrated Moving
Average o Modelo Autorregresivo Integrado de Promedio
Movil
modelo <- auto.arima(serie_de_tiempo, D=1)
modelo
## Series: serie_de_tiempo
## ARIMA(0,0,0)(0,1,0)[4] with drift
##
## Coefficients:
## drift
## 1.5000
## s.e. 0.1768
##
## sigma^2 = 2.01: log likelihood = -2.84
## AIC=9.68 AICc=-2.32 BIC=7.06
## Series: serie_de_tiempo
## ARIMA(0,0,0)(0,1,0)[4] with drift
##
## Coefficients:
## drift
## 1.5000
## s.e. 0.1768
##
## sigma^2 = 2.01: log likelihood = -2.84
## AIC=9.68 AICc=-2.32 BIC=7.06
##
## Training set error measures:
## ME RMSE MAE MPE MAPE MASE
## Training set 0.03333332 0.5787923 0.3666667 0.03685269 0.6429133 0.06111111
## ACF1
## Training set -0.5073047
4. Realizar el pronóstico
pronostico <- forecast(modelo, level = c(95), h=5)
pronostico
## Point Forecast Lo 95 Hi 95
## 2021 Q3 61 58.22127 63.77873
## 2021 Q4 63 60.22127 65.77873
## 2022 Q1 61 58.22127 63.77873
## 2022 Q2 66 63.22127 68.77873
## 2022 Q3 67 63.07028 70.92972

LS0tCnRpdGxlOiAiU2VyaWVzIGRlIHRpZW1wbyIKYXV0aG9yOiAiSm9zw6kgQWxlamFuZHJvIE1vbnRhw7FvICBBMDA4MzA0ODYiCmRhdGU6ICIyMDIzLTEwLTAzIgpvdXRwdXQ6IAogIGh0bWxfZG9jdW1lbnQ6CiAgICB0b2M6IFRSVUUgCiAgICB0b2NfZmxvYXQ6IFRSVUUKICAgIGNvZGVfZG93bmxvYWQ6IFRSVUUKICAgIHRoZW1lOiAiYm9vdHN0cmFwIgogICAgaGlnaGxpZ2h0OiAiZXNwcmVzc28iCgotLS0KCiFbXSgvVXNlcnMvYWxlamFuZHJvbW9udGFuby9EZXNrdG9wL3Nlcmllcy1kZS10aWVtcG9fNTcwZWM5MDUyMDVhNF9pbWcuanBnLnBuZykKCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij5TZXJpZXMgZGUgVGllbXBvPC9zcGFuPgoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij4wLiBDb25jZXB0bzwvc3Bhbj4KVW5hICoqc2VyaWUgZGUgdGllbXBvKiogZXMgdW5hIGNvbGVjY2nDs24gZGUgb2JzZXJ2YWNpb25lcyBzb2JyZSB1biBkZXRlcm1pbmFkbyBmZW7Ds21lbm8gZWZlY3R1YWRvcyBlbiBtb21lbnRvcyBkZSB0aWVtcG8gc3VjZXNpdm9zLCB1c3VhbG1lbnRlIGVxdWllc3BhY2lhZG9zLiAgCgpFamVtcGxvcyBkZSBzZXJpZXMgZGUgdGllbXBvIHNvbjogIAoxLiBQcmVjaW8gZGUgYWNjaW9uZXMuICAKMi4gTml2ZWxlcyBkZSBpbnZlbnRhcmlvLiAKMy4gUm90YWNpw7NuIGRlIHBlcnNvbmFsLiAKNC4gVmVudGFzLiAKNS4gUElCIChHRFApLiAgCgojIyA8c3BhbiBzdHlsZT0iY29sb3I6IG9yYW5nZTsiPjEuIEluc3RhbGFyIHBhcXVldGVzIHkgbGxhbWFyIGxpYnJlcsOtYXM8L3NwYW4+CmBgYHtyfQojaW5zdGFsbC5wYWNrYWdlcygiZm9yZWNhc3QiKQpsaWJyYXJ5KGZvcmVjYXN0KQpgYGAKCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogb3JhbmdlOyI+Mi4gQ3JlYXIgbGEgc2VyaWUgZGUgdGllbXBvcyA8L3NwYW4+CmBgYHtyfQojIEVqZW1wbG86IExvcyBzaWd1aWVudGVzIGRhdG9zIGRlIHByb2R1Y2Npw7NuIHRyaW1lc3RyYWwgCiMgaW5pY2lhbiBlbiBlbCBwcmltZXIgdHJpbWVzdHJlIGRlIDIwMjAuIAojIFNlIGJ1c2NhIHByb25vc3RpY2FyIGxhIHByb2R1Y2Npw7NuIGRlIGxvcyBzaWd1aWVudGVzIDUgdHJpbWVzdHJlcy4gCgpwcm9kdWNjaW9uIDwtIGMoNTAsNTMsNTUsNTcsNTUsNjApCgpzZXJpZV9kZV90aWVtcG8gPC0gdHMoZGF0YT1wcm9kdWNjaW9uLCBzdGFydCA9IGMoMjAyMCwxKSwgZnJlcXVlbmN5ID0gNCkKc2VyaWVfZGVfdGllbXBvCmBgYAoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij4zLiBDcmVhciBlbCBtb2RlbG8gQVJJTUEgPC9zcGFuPgoqKkFSSU1BKiogc2lnbmlmaWNhICpBdXRvUmVncmVzc2l2ZSBJbnRlZ3JhdGVkIE1vdmluZyBBdmVyYWdlKiBvICpNb2RlbG8gQXV0b3JyZWdyZXNpdm8gSW50ZWdyYWRvIGRlIFByb21lZGlvIE1vdmlsKiAKYGBge3J9Cm1vZGVsbyA8LSBhdXRvLmFyaW1hKHNlcmllX2RlX3RpZW1wbywgRD0xKQptb2RlbG8Kc3VtbWFyeShtb2RlbG8pCmBgYAoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij40LiBSZWFsaXphciBlbCBwcm9uw7NzdGljbyA8L3NwYW4+CmBgYHtyfQpwcm9ub3N0aWNvICA8LSBmb3JlY2FzdChtb2RlbG8sIGxldmVsID0gYyg5NSksIGg9NSkKcHJvbm9zdGljbwpwbG90KHByb25vc3RpY28pCmBgYAoK