
Ejemplo Producción.
Instalar Paquetes y llamar Librerías.
#install.packages("forecast")
library(forecast)
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
#install.packages("readxl")
library(readxl)
Contexto.
Una serie de tiempo es una colección de
observaciones sobre un determinado fenómeno efectudas en momentos de
tiempo sucesivos, usualmente equispaciados.
Ejemplos de Series de Tiempo: 1. Precio de Acciones 2. Niveles de
Inventario 3. Rotación de Personal 4. Ventas 5. PIB (GDP)
Crear la Serie de Tiempo.
EJEMPLO:Los siguientes datos de producción trimestral inician en el
primer trimestre de 2020. Se busca pronosticar la producción de los
sigueintes 5 trimestres.
produccion <- c(50,53,55,57,55,60)
st_produccion <- ts(data=produccion, start= c(2020,1), frequency=4)# En este caso la serie de tiempo incicia en 2020 en el primer trimestre
Crear el modelo ARIMA.
ARIMA Significa Modelo Autorregresivo Integrado de
Promedio Movil, en ingles.
modelo_produccion <- auto.arima(st_produccion, D=1)#D: Diferenciación Estacional
modelo_produccion
## Series: st_produccion
## 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
summary(modelo_produccion)
## Series: st_produccion
## 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
#Al comparar modelos, seleccionamos el que tenga el menor MAPE (Porcentaje de Error Promedio Absoluto)
Generar el Pronóstico .
pronostico_produccion <- forecast(modelo_produccion, level=c(95), h=5)
# Si no nos dicen otra cosa, el nivel de confiabilidad es 95%. Los periodos a pronosticar es H
pronostico_produccion
## 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
plot(pronostico_produccion)

Ejercicio 1. Mexico rumbo al 2050
En equipos de 2 o 3, seleccionar un estado de mexico, obtener los
datos historicos de su poblacion, generar un pronostico hasta 2050
Crear la Serie de Tiempo de la CDMX.
poblacion <- c(720753,906063,1229576,1757530,3050442,4870876,6874165,8831079,8235744,8605239,8851080,9209944)
summary(poblacion)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 720753 1625542 5872521 5261874 8661699 9209944
st_poblacion <- ts(data=poblacion, start= c(1910), frequency=.1)# En este caso la serie de tiempo incicia en 1910 y va a ser anualmente
Crear el modelo ARIMA.
modelo_poblacion <- auto.arima(st_poblacion)
modelo_poblacion
## Series: st_poblacion
## ARIMA(0,1,0) with drift
##
## Coefficients:
## drift
## 771744.6
## s.e. 246886.1
##
## sigma^2 = 7.375e+11: log likelihood = -165.38
## AIC=334.76 AICc=336.26 BIC=335.56
summary(modelo_poblacion)
## Series: st_poblacion
## ARIMA(0,1,0) with drift
##
## Coefficients:
## drift
## 771744.6
## s.e. 246886.1
##
## sigma^2 = 7.375e+11: log likelihood = -165.38
## AIC=334.76 AICc=336.26 BIC=335.56
##
## Training set error measures:
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set -4.249297 783937.7 664432.7 -6.400298 18.05876 0.126273 0.3933874
#Al comparar modelos, seleccionamos el que tenga el menor MAPE (Porcentaje de Error Promedio Absoluto)
Generar el Pronóstico .
pronostico_poblacion <- forecast(modelo_poblacion, level=c(95), h=3)
# Si no nos dicen otra cosa, el nivel de confiabilidad es 95%. Los periodos a pronosticar es H
pronostico_poblacion
## Point Forecast Lo 95 Hi 95
## 2030 9981689 8298548 11664829
## 2040 10753433 8373114 13133753
## 2050 11525178 8609894 14440462
plot(pronostico_poblacion)

Ejercicio 2 Aplicacion Shiny.
Agregar una pestaña en la aplicaicon de Shiny con el ejercicio Mexico
rumbo al 2050. En el menú se debe seleccionar la cantidad de años a
pronosticar Aplicaicon de
Shiny
Ejercicio 3.
- Conocimiento general de KPIS y el como medirlos y evaluar en la
compañia.
- Estados de Resultados, Balance General y Flujos de Efectivo
- Desarrolle mas Excel
- IKIGAI y metodos de comunicacion
- Metodologias de Mercadotecnia y clasificacion de los tipos de
productos
- Profundizamos mas en el WACC y en estados financieros
- Aprendi R Studio
- Machine Learning y Redes Neuronales
- Excel Avanzado, vi muchas cosas de excel
- IA aprendí mas redes neuronales y mucha regresión lineal, además de
gestion de proyectos e inteligencia artificial
Actividad 2- Hershey´s.
Importar la Base de datos.
library(readxl)
ventas <- read_excel("C:/Users/lffr1/Downloads/Ventas_Históricas_Lechitas (1) (1).xlsx")
str(ventas)
## tibble [36 × 1] (S3: tbl_df/tbl/data.frame)
## $ Ventas: num [1:36] 25521 23740 26254 25868 27073 ...
st_ventas<- ts(data=ventas, start=c(2017,1),frequency=12)
Crear el modelo ARIMA.
modelo_ventas <- auto.arima(st_ventas)
modelo_ventas
## Series: st_ventas
## ARIMA(1,0,0)(1,1,0)[12] with drift
##
## Coefficients:
## ar1 sar1 drift
## 0.6383 -0.5517 288.8979
## s.e. 0.1551 0.2047 14.5026
##
## sigma^2 = 202701: log likelihood = -181.5
## AIC=371 AICc=373.11 BIC=375.72
summary(modelo_ventas)
## Series: st_ventas
## ARIMA(1,0,0)(1,1,0)[12] with drift
##
## Coefficients:
## ar1 sar1 drift
## 0.6383 -0.5517 288.8979
## s.e. 0.1551 0.2047 14.5026
##
## sigma^2 = 202701: log likelihood = -181.5
## AIC=371 AICc=373.11 BIC=375.72
##
## Training set error measures:
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set 25.22158 343.864 227.17 0.08059932 0.7069542 0.06491044 0.2081026
Generar el Pronóstico.
pronostico_ventas <-forecast(modelo_ventas,level=c(95), h=12)
pronostico_ventas
## Point Forecast Lo 95 Hi 95
## Jan 2020 35498.90 34616.48 36381.32
## Feb 2020 34202.17 33155.28 35249.05
## Mar 2020 36703.01 35596.10 37809.92
## Apr 2020 36271.90 35141.44 37402.36
## May 2020 37121.98 35982.07 38261.90
## Jun 2020 37102.65 35958.90 38246.40
## Jul 2020 37151.04 36005.73 38296.34
## Aug 2020 38564.64 37418.70 39710.58
## Sep 2020 38755.22 37609.03 39901.42
## Oct 2020 39779.02 38632.72 40925.32
## Nov 2020 38741.63 37595.28 39887.97
## Dec 2020 38645.86 37499.50 39792.22
plot(pronostico_ventas)

LS0tDQp0aXRsZTogIkFjdGl2aWRhZF8yX01vZHVsb18xIg0KYXV0aG9yOiAiQ2Fyb2xpbmEgRXNxdWl2ZWxfIEEwMTc3MDcxNyINCmRhdGU6ICIyMDI1LTA4LTE0Ig0Kb3V0cHV0OiANCiAgaHRtbF9kb2N1bWVudDoNCiAgICB0b2M6IFRSVUUNCiAgICB0b2NfZmxvYXQ6IFRSVUUNCiAgICBjb2RlX2Rvd25sb2FkOiBUUlVFDQogICAgdGhlbWU6IGNlcnVsZWFuDQotLS0NCg0KIVtdKGh0dHBzOi8vYXByZW5kZWNvbmVsaS5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMjAvMDUvQWRvYmVTdG9ja18zMDAxNjcxNjItc2NhbGVkLmpwZWcpDQoNCiMgPHNwYW4gc3R5bGUgPSJjb2xvcjpibHVlOyI+RWplbXBsbyBQcm9kdWNjacOzbi4gPC9zcGFuPg0KDQojIDxzcGFuIHN0eWxlID0iY29sb3I6Ymx1ZTsiPkluc3RhbGFyIFBhcXVldGVzIHkgbGxhbWFyIExpYnJlcsOtYXMuIDwvc3Bhbj4NCg0KYGBge3J9DQojaW5zdGFsbC5wYWNrYWdlcygiZm9yZWNhc3QiKQ0KbGlicmFyeShmb3JlY2FzdCkNCiNpbnN0YWxsLnBhY2thZ2VzKCJyZWFkeGwiKQ0KbGlicmFyeShyZWFkeGwpDQpgYGANCg0KDQojIyA8c3BhbiBzdHlsZSA9ImNvbG9yOmJsdWU7Ij5Db250ZXh0by4gPC9zcGFuPg0KDQpVbmEgKipzZXJpZSBkZSB0aWVtcG8qKiBlcyB1bmEgY29sZWNjacOzbiBkZSBvYnNlcnZhY2lvbmVzIHNvYnJlIHVuIGRldGVybWluYWRvIGZlbsOzbWVubyBlZmVjdHVkYXMgZW4gbW9tZW50b3MgZGUgdGllbXBvIHN1Y2VzaXZvcywgdXN1YWxtZW50ZSBlcXVpc3BhY2lhZG9zLg0KDQpFamVtcGxvcyBkZSBTZXJpZXMgZGUgVGllbXBvOg0KMS4gUHJlY2lvIGRlIEFjY2lvbmVzDQoyLiBOaXZlbGVzIGRlIEludmVudGFyaW8gDQozLiBSb3RhY2nDs24gZGUgUGVyc29uYWwNCjQuIFZlbnRhcw0KNS4gUElCIChHRFApDQoNCiMjIDxzcGFuIHN0eWxlID0iY29sb3I6Ymx1ZTsiPiBDcmVhciBsYSBTZXJpZSBkZSBUaWVtcG8uIDwvc3Bhbj4NCkVKRU1QTE86TG9zIHNpZ3VpZW50ZXMgZGF0b3MgZGUgcHJvZHVjY2nDs24gdHJpbWVzdHJhbCBpbmljaWFuIGVuIGVsIHByaW1lciB0cmltZXN0cmUgZGUgMjAyMC4gU2UgYnVzY2EgcHJvbm9zdGljYXIgbGEgcHJvZHVjY2nDs24gZGUgbG9zIHNpZ3VlaW50ZXMgNSB0cmltZXN0cmVzLg0KYGBge3J9DQpwcm9kdWNjaW9uIDwtIGMoNTAsNTMsNTUsNTcsNTUsNjApDQoNCnN0X3Byb2R1Y2Npb24gPC0gdHMoZGF0YT1wcm9kdWNjaW9uLCBzdGFydD0gYygyMDIwLDEpLCBmcmVxdWVuY3k9NCkjIEVuIGVzdGUgY2FzbyBsYSBzZXJpZSBkZSB0aWVtcG8gaW5jaWNpYSBlbiAyMDIwIGVuIGVsIHByaW1lciB0cmltZXN0cmUNCmBgYA0KDQojIyA8c3BhbiBzdHlsZSA9ImNvbG9yOmJsdWU7Ij4gQ3JlYXIgZWwgbW9kZWxvIEFSSU1BLiA8L3NwYW4+DQoNCioqQVJJTUEqKiBTaWduaWZpY2EgTW9kZWxvIEF1dG9ycmVncmVzaXZvIEludGVncmFkbyBkZSBQcm9tZWRpbyBNb3ZpbCwgZW4gaW5nbGVzLg0KDQpgYGB7cn0NCm1vZGVsb19wcm9kdWNjaW9uIDwtIGF1dG8uYXJpbWEoc3RfcHJvZHVjY2lvbiwgRD0xKSNEOiBEaWZlcmVuY2lhY2nDs24gRXN0YWNpb25hbCANCm1vZGVsb19wcm9kdWNjaW9uDQpzdW1tYXJ5KG1vZGVsb19wcm9kdWNjaW9uKQ0KI0FsIGNvbXBhcmFyIG1vZGVsb3MsIHNlbGVjY2lvbmFtb3MgZWwgcXVlIHRlbmdhIGVsIG1lbm9yIE1BUEUgKFBvcmNlbnRhamUgZGUgRXJyb3IgUHJvbWVkaW8gQWJzb2x1dG8pDQpgYGANCg0KIyA8c3BhbiBzdHlsZSA9ImNvbG9yOmJsdWU7Ij5HZW5lcmFyIGVsIFByb27Ds3N0aWNvIC4gPC9zcGFuPg0KDQpgYGB7cn0NCnByb25vc3RpY29fcHJvZHVjY2lvbiA8LSBmb3JlY2FzdChtb2RlbG9fcHJvZHVjY2lvbiwgbGV2ZWw9Yyg5NSksIGg9NSkNCiMgU2kgbm8gbm9zIGRpY2VuIG90cmEgY29zYSwgZWwgbml2ZWwgZGUgY29uZmlhYmlsaWRhZCBlcyA5NSUuIExvcyBwZXJpb2RvcyBhIHByb25vc3RpY2FyIGVzICBIDQpwcm9ub3N0aWNvX3Byb2R1Y2Npb24NCnBsb3QocHJvbm9zdGljb19wcm9kdWNjaW9uKQ0KYGBgDQoNCiMgPHNwYW4gc3R5bGUgPSJjb2xvcjpibHVlOyI+RWplcmNpY2lvIDEuIE1leGljbyBydW1ibyBhbCAyMDUwIDwvc3Bhbj4NCkVuIGVxdWlwb3MgZGUgMiBvIDMsIHNlbGVjY2lvbmFyIHVuIGVzdGFkbyBkZSBtZXhpY28sIG9idGVuZXIgbG9zIGRhdG9zIGhpc3Rvcmljb3MgZGUgc3UgcG9ibGFjaW9uLCBnZW5lcmFyIHVuIHByb25vc3RpY28gaGFzdGEgMjA1MA0KDQojIyA8c3BhbiBzdHlsZSA9ImNvbG9yOmJsdWU7Ij4gQ3JlYXIgbGEgU2VyaWUgZGUgVGllbXBvIGRlIGxhIENETVguIDwvc3Bhbj4NCg0KYGBge3J9DQpwb2JsYWNpb24gPC0gYyg3MjA3NTMsOTA2MDYzLDEyMjk1NzYsMTc1NzUzMCwzMDUwNDQyLDQ4NzA4NzYsNjg3NDE2NSw4ODMxMDc5LDgyMzU3NDQsODYwNTIzOSw4ODUxMDgwLDkyMDk5NDQpDQpzdW1tYXJ5KHBvYmxhY2lvbikNCg0Kc3RfcG9ibGFjaW9uIDwtIHRzKGRhdGE9cG9ibGFjaW9uLCBzdGFydD0gYygxOTEwKSwgZnJlcXVlbmN5PS4xKSMgRW4gZXN0ZSBjYXNvIGxhIHNlcmllIGRlIHRpZW1wbyBpbmNpY2lhIGVuIDE5MTAgeSB2YSBhIHNlciBhbnVhbG1lbnRlDQpgYGANCg0KIyMgPHNwYW4gc3R5bGUgPSJjb2xvcjpibHVlOyI+IENyZWFyIGVsIG1vZGVsbyBBUklNQS4gPC9zcGFuPg0KDQpgYGB7cn0NCm1vZGVsb19wb2JsYWNpb24gPC0gYXV0by5hcmltYShzdF9wb2JsYWNpb24pDQptb2RlbG9fcG9ibGFjaW9uDQpzdW1tYXJ5KG1vZGVsb19wb2JsYWNpb24pDQojQWwgY29tcGFyYXIgbW9kZWxvcywgc2VsZWNjaW9uYW1vcyBlbCBxdWUgdGVuZ2EgZWwgbWVub3IgTUFQRSAoUG9yY2VudGFqZSBkZSBFcnJvciBQcm9tZWRpbyBBYnNvbHV0bykNCmBgYA0KDQojIDxzcGFuIHN0eWxlID0iY29sb3I6Ymx1ZTsiPkdlbmVyYXIgZWwgUHJvbsOzc3RpY28gLjwvc3Bhbj4NCg0KYGBge3J9DQpwcm9ub3N0aWNvX3BvYmxhY2lvbiA8LSBmb3JlY2FzdChtb2RlbG9fcG9ibGFjaW9uLCBsZXZlbD1jKDk1KSwgaD0zKQ0KIyBTaSBubyBub3MgZGljZW4gb3RyYSBjb3NhLCBlbCBuaXZlbCBkZSBjb25maWFiaWxpZGFkIGVzIDk1JS4gTG9zIHBlcmlvZG9zIGEgcHJvbm9zdGljYXIgZXMgIEgNCnByb25vc3RpY29fcG9ibGFjaW9uDQpwbG90KHByb25vc3RpY29fcG9ibGFjaW9uKQ0KYGBgDQoNCiMgPHNwYW4gc3R5bGUgPSJjb2xvcjpibHVlOyI+RWplcmNpY2lvIDIgQXBsaWNhY2lvbiBTaGlueS4gPC9zcGFuPg0KQWdyZWdhciB1bmEgcGVzdGHDsWEgZW4gbGEgYXBsaWNhaWNvbiBkZSBTaGlueSBjb24gZWwgZWplcmNpY2lvIE1leGljbyBydW1ibyBhbCAyMDUwLiBFbiBlbCBtZW7DuiBzZSBkZWJlIHNlbGVjY2lvbmFyIGxhIGNhbnRpZGFkIGRlIGHDsW9zIGEgcHJvbm9zdGljYXIgDQpbQXBsaWNhaWNvbiBkZSBTaGlueV0oaHR0cHM6Ly9jYXJvZXNxdS5zaGlueWFwcHMuaW8vRU0wMi8pDQoNCg0KIyA8c3BhbiBzdHlsZSA9ImNvbG9yOmJsdWU7Ij5FamVyY2ljaW8gMy4gPC9zcGFuPg0KMS4gQ29ub2NpbWllbnRvIGdlbmVyYWwgZGUgS1BJUyB5IGVsIGNvbW8gbWVkaXJsb3MgeSBldmFsdWFyIGVuIGxhIGNvbXBhw7FpYS4NCjIuIEVzdGFkb3MgZGUgUmVzdWx0YWRvcywgQmFsYW5jZSBHZW5lcmFsIHkgRmx1am9zIGRlIEVmZWN0aXZvIA0KMy4gRGVzYXJyb2xsZSBtYXMgRXhjZWwgDQo0LiBJS0lHQUkgeSBtZXRvZG9zIGRlIGNvbXVuaWNhY2lvbiANCjUuIE1ldG9kb2xvZ2lhcyBkZSBNZXJjYWRvdGVjbmlhIHkgY2xhc2lmaWNhY2lvbiBkZSBsb3MgdGlwb3MgZGUgcHJvZHVjdG9zDQo2LiBQcm9mdW5kaXphbW9zIG1hcyBlbiBlbCBXQUNDIHkgZW4gZXN0YWRvcyBmaW5hbmNpZXJvcyANCjcuIEFwcmVuZGkgUiBTdHVkaW8gDQo4LiBNYWNoaW5lIExlYXJuaW5nIHkgUmVkZXMgTmV1cm9uYWxlcyANCjkuIEV4Y2VsIEF2YW56YWRvLCB2aSBtdWNoYXMgY29zYXMgZGUgZXhjZWwNCjEwLiBJQSAgYXByZW5kw60gbWFzIHJlZGVzIG5ldXJvbmFsZXMgeSBtdWNoYSByZWdyZXNpw7NuIGxpbmVhbCwgYWRlbcOhcyBkZSBnZXN0aW9uIGRlIHByb3llY3RvcyBlIGludGVsaWdlbmNpYSBhcnRpZmljaWFsIA0KDQoNCiMgPHNwYW4gc3R5bGUgPSJjb2xvcjpibHVlOyI+QWN0aXZpZGFkIDItIEhlcnNoZXnCtHMuIDwvc3Bhbj4NCg0KIyMgPHNwYW4gc3R5bGUgPSJjb2xvcjpibHVlOyI+IEltcG9ydGFyIGxhIEJhc2UgZGUgZGF0b3MuIDwvc3Bhbj4NCg0KYGBge3J9DQpsaWJyYXJ5KHJlYWR4bCkNCnZlbnRhcyA8LSByZWFkX2V4Y2VsKCJDOi9Vc2Vycy9sZmZyMS9Eb3dubG9hZHMvVmVudGFzX0hpc3TDs3JpY2FzX0xlY2hpdGFzICgxKSAoMSkueGxzeCIpDQoNCnN0cih2ZW50YXMpDQpzdF92ZW50YXM8LSB0cyhkYXRhPXZlbnRhcywgc3RhcnQ9YygyMDE3LDEpLGZyZXF1ZW5jeT0xMikNCg0KYGBgDQoNCiMjIDxzcGFuIHN0eWxlID0iY29sb3I6Ymx1ZTsiPiBDcmVhciBlbCBtb2RlbG8gQVJJTUEuIDwvc3Bhbj4NCg0KYGBge3J9DQptb2RlbG9fdmVudGFzIDwtIGF1dG8uYXJpbWEoc3RfdmVudGFzKQ0KbW9kZWxvX3ZlbnRhcw0Kc3VtbWFyeShtb2RlbG9fdmVudGFzKQ0KYGBgDQoNCiMjIDxzcGFuIHN0eWxlID0iY29sb3I6Ymx1ZTsiPiBHZW5lcmFyIGVsIFByb27Ds3N0aWNvLiA8L3NwYW4+DQoNCmBgYHtyfQ0KcHJvbm9zdGljb192ZW50YXMgPC1mb3JlY2FzdChtb2RlbG9fdmVudGFzLGxldmVsPWMoOTUpLCBoPTEyKQ0KcHJvbm9zdGljb192ZW50YXMNCnBsb3QocHJvbm9zdGljb192ZW50YXMpDQpgYGANCg==