COSTA RICA

1. importar los datos

library(ggplot2)
library(forecast)
library(readxl)
ivae_ts_CR <- read_excel("C:/Users/Luis Anaya/OneDrive/Desktop/metodos para el analisis economico/UNIDAD II/IMAE-Centroamerica/IMAE-CR.xlsx", 
    col_types = c("numeric"))
data=ivae_ts_CR %>% ts(start = c(2009,1),frequency = 12)->ivae_CR
print(ivae_CR)
##         Jan    Feb    Mar    Apr    May    Jun    Jul    Aug    Sep    Oct
## 2009  73.05  70.50  75.68  70.13  72.30  73.43  72.93  72.00  73.64  76.77
## 2010  75.10  73.53  79.92  73.27  75.74  76.43  76.13  75.58  77.14  79.74
## 2011  78.27  76.77  82.00  76.03  79.23  79.63  77.99  77.89  80.05  83.57
## 2012  82.37  82.95  86.03  78.55  82.23  81.83  80.60  81.77  82.75  85.69
## 2013  83.10  82.79  85.62  81.13  84.12  83.77  83.88  83.97  86.04  88.53
## 2014  86.41  87.04  89.12  83.12  86.04  85.36  86.63  86.17  88.14  92.55
## 2015  88.30  90.04  92.86  88.50  92.09  92.53  93.84  92.75  93.78  96.67
## 2016  94.53  95.60  96.36  93.13  95.39  95.66  94.94  94.84  98.12 101.26
## 2017  96.71  96.96 100.85  94.84  99.06  99.90  96.26  96.64  98.99 103.96
## 2018  99.21  99.00 103.55  99.62 104.59 103.43 101.46 101.10 101.62 106.09
## 2019 101.48 101.93 105.94  99.98 103.78 103.63 102.45 101.43 103.57 109.05
## 2020 102.20 104.23 102.60  89.65  91.81  95.78  91.86  92.51  97.39 101.72
## 2021  96.63 100.29 108.09 101.66 104.50 104.73 107.77 105.71 108.62 111.23
## 2022 106.31 108.14 117.49 105.61 108.90 109.10 110.06 110.34              
##         Nov    Dec
## 2009  78.18  78.35
## 2010  82.16  81.06
## 2011  85.93  84.67
## 2012  89.26  88.63
## 2013  90.77  90.80
## 2014  94.00  95.23
## 2015  98.43  97.87
## 2016 103.90 103.79
## 2017 107.71 108.11
## 2018 108.90 108.01
## 2019 111.47 111.09
## 2020 105.12 110.61
## 2021 116.91 119.84
## 2022
autoplot(ivae_CR,xlab = "años",ylab = "Indice",main = "IVAE total, periodo 2009-2022 (agosto)")+theme_bw()

2. proyección a Seis meses

library(forecast)
modelo<-auto.arima(y = ivae_CR)
summary(modelo)
## Series: ivae_CR 
## ARIMA(1,0,0)(0,1,1)[12] with drift 
## 
## Coefficients:
##          ar1     sma1   drift
##       0.8563  -0.5052  0.2377
## s.e.  0.0419   0.0810  0.0442
## 
## sigma^2 = 3.366:  log likelihood = -308.74
## AIC=625.48   AICc=625.76   BIC=637.58
## 
## Training set error measures:
##                      ME     RMSE      MAE         MPE     MAPE      MASE
## Training set 0.01259946 1.748727 1.157394 -0.00975326 1.211633 0.2864043
##                    ACF1
## Training set -0.0658692
pronosticos_CR<-forecast(modelo,h = 6)
autoplot(pronosticos_CR)+xlab("Años")+ylab("indice")+theme_bw()

library(forecast)
autoplot(pronosticos_CR$x,series = "IMAE-CR")+autolayer(pronosticos_CR$fitted,series = "Pronóstico")+ggtitle("Ajuste SARIMA")

3. Serie ampliada

ivae_h_CR<-ts(as.numeric(rbind(as.matrix(pronosticos_CR$x),as.matrix(pronosticos_CR$mean))),
           start = c(2009,1),frequency = 12)
print(ivae_h_CR)
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2009  73.0500  70.5000  75.6800  70.1300  72.3000  73.4300  72.9300  72.0000
## 2010  75.1000  73.5300  79.9200  73.2700  75.7400  76.4300  76.1300  75.5800
## 2011  78.2700  76.7700  82.0000  76.0300  79.2300  79.6300  77.9900  77.8900
## 2012  82.3700  82.9500  86.0300  78.5500  82.2300  81.8300  80.6000  81.7700
## 2013  83.1000  82.7900  85.6200  81.1300  84.1200  83.7700  83.8800  83.9700
## 2014  86.4100  87.0400  89.1200  83.1200  86.0400  85.3600  86.6300  86.1700
## 2015  88.3000  90.0400  92.8600  88.5000  92.0900  92.5300  93.8400  92.7500
## 2016  94.5300  95.6000  96.3600  93.1300  95.3900  95.6600  94.9400  94.8400
## 2017  96.7100  96.9600 100.8500  94.8400  99.0600  99.9000  96.2600  96.6400
## 2018  99.2100  99.0000 103.5500  99.6200 104.5900 103.4300 101.4600 101.1000
## 2019 101.4800 101.9300 105.9400  99.9800 103.7800 103.6300 102.4500 101.4300
## 2020 102.2000 104.2300 102.6000  89.6500  91.8100  95.7800  91.8600  92.5100
## 2021  96.6300 100.2900 108.0900 101.6600 104.5000 104.7300 107.7700 105.7100
## 2022 106.3100 108.1400 117.4900 105.6100 108.9000 109.1000 110.0600 110.3400
## 2023 109.9052 111.7756                                                      
##           Sep      Oct      Nov      Dec
## 2009  73.6400  76.7700  78.1800  78.3500
## 2010  77.1400  79.7400  82.1600  81.0600
## 2011  80.0500  83.5700  85.9300  84.6700
## 2012  82.7500  85.6900  89.2600  88.6300
## 2013  86.0400  88.5300  90.7700  90.8000
## 2014  88.1400  92.5500  94.0000  95.2300
## 2015  93.7800  96.6700  98.4300  97.8700
## 2016  98.1200 101.2600 103.9000 103.7900
## 2017  98.9900 103.9600 107.7100 108.1100
## 2018 101.6200 106.0900 108.9000 108.0100
## 2019 103.5700 109.0500 111.4700 111.0900
## 2020  97.3900 101.7200 105.1200 110.6100
## 2021 108.6200 111.2300 116.9100 119.8400
## 2022 112.9157 116.0689 120.0131 122.4011
## 2023

4. Descomposición de la serie temporal

library(stats)
fit_CR<-stl(ivae_h_CR,"periodic")
autoplot(fit_CR)+theme_bw()

TC_CR<-fit_CR$time.series[,2]
print(TC_CR)
##            Jan       Feb       Mar       Apr       May       Jun       Jul
## 2009  73.55845  73.66361  73.76877  73.87732  73.98587  74.10813  74.23039
## 2010  75.56108  75.90012  76.23916  76.55988  76.88060  77.12051  77.36042
## 2011  78.62940  78.90955  79.18971  79.49489  79.80008  80.10809  80.41611
## 2012  82.17139  82.44383  82.71628  82.95071  83.18514  83.33500  83.48487
## 2013  84.20715  84.44451  84.68187  84.91242  85.14298  85.37199  85.60099
## 2014  86.87594  87.08498  87.29402  87.55247  87.81092  88.07629  88.34166
## 2015  90.79583  91.34470  91.89358  92.35602  92.81847  93.20111  93.58375
## 2016  95.28315  95.56729  95.85142  96.23567  96.61993  96.97517  97.33041
## 2017  98.74523  98.91736  99.08948  99.29462  99.49976  99.77008 100.04040
## 2018 101.95512 102.30107 102.64701 102.85097 103.05493 103.18860 103.32226
## 2019 103.65794 103.78257 103.90719 104.10184 104.29649 104.48535 104.67421
## 2020 101.93393 101.06685 100.19977  99.50832  98.81686  98.45479  98.09272
## 2021 102.02633 103.05512 104.08391 105.01445 105.94498 106.77451 107.60404
## 2022 110.65562 110.93377 111.21191 111.51284 111.81378 112.11677 112.41977
## 2023 114.05214 114.33706                                                  
##            Aug       Sep       Oct       Nov       Dec
## 2009  74.38098  74.53157  74.75088  74.97019  75.26563
## 2010  77.53958  77.71875  77.92781  78.13686  78.38313
## 2011  80.72591  81.03570  81.33322  81.63075  81.90107
## 2012  83.54768  83.61050  83.72350  83.83651  84.02183
## 2013  85.84741  86.09383  86.31105  86.52827  86.70210
## 2014  88.62847  88.91528  89.32809  89.74090  90.26837
## 2015  93.92133  94.25891  94.54322  94.82753  95.05534
## 2016  97.57679  97.82317  98.06297  98.30277  98.52400
## 2017 100.29498 100.54955 100.86216 101.17477 101.56495
## 2018 103.42024 103.51822 103.54701 103.57580 103.61687
## 2019 104.64153 104.60884 104.10143 103.59401 102.76397
## 2020  98.25937  98.42602  99.18059  99.93516 100.98075
## 2021 108.31104 109.01804 109.49925 109.98047 110.31805
## 2022 112.67839 112.93700 113.20927 113.48153 113.76683
## 2023

5. Cálculo de las tasas

library(dplyr)
library(zoo)
TC_CR %>% as.numeric() %>% as.data.frame()->TC_CR_df
names(TC_CR_df)<-c("TC_CR")
TC_CR_df %>% mutate(T_1_1=(TC_CR/dplyr::lag(TC_CR,n=1)-1)*100,
                 T_1_12=(TC_CR/dplyr::lag(TC_CR,n=12)-1)*100,
                 T_12_12=(rollapply(TC_CR,12,mean,align='right',fill=NA)/rollapply(dplyr::lag(TC_CR,n=12),12,mean,align='right',fill=NA)-1)*100) %>%
          #Aquí se realiza el centrado
          mutate(T_1_12C=dplyr::lead(T_1_12,n = 6),
                 T_12_12C=dplyr::lead(T_12_12,n = 12)) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_CR
print(tail(tabla_coyuntura_CR,n=12))
##             TC_CR     T_1_1   T_1_12  T_12_12  T_1_12C T_12_12C
## Mar 2022 111.2119 0.2507289 6.848319 8.697905 3.594789       NA
## Apr 2022 111.5128 0.2705948 6.188098 8.740460 3.388166       NA
## May 2022 111.8138 0.2698646 5.539474 8.585336 3.183350       NA
## Jun 2022 112.1168 0.2709813 5.003311 8.283174 3.126223       NA
## Jul 2022 112.4198 0.2702490 4.475416 7.837832 3.069444       NA
## Aug 2022 112.6784 0.2300474 4.032229 7.316447 3.067861       NA
## Sep 2022 112.9370 0.2295194 3.594789 6.721524       NA       NA
## Oct 2022 113.2093 0.2410743 3.388166 6.143015       NA       NA
## Nov 2022 113.4815 0.2404945 3.183350 5.580147       NA       NA
## Dec 2022 113.7668 0.2514104 3.126223 5.080038       NA       NA
## Jan 2023 114.0521 0.2507799 3.069444 4.640502       NA       NA
## Feb 2023 114.3371 0.2498195 3.067861 4.267587       NA       NA

6. Gráfico de las tasas (centradas)

library(dplyr)
library(forecast)
library(ggplot2)
tabla_coyuntura_CR %>% as.data.frame() %>% select(T_1_12C,T_12_12C) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_graficos_CR
autoplot(tabla_coyuntura_graficos_CR)+theme_bw()

tabla_coyuntura_CR %>% as.data.frame() %>% select(T_1_1) %>% ts(start = c(2009,1),frequency = 12) %>% autoplot()

EL SALVADOR

1. importar los datos

library(ggplot2)
library(forecast)
library(readxl)
ivae_ts_ES <- read_excel("C:/Users/Luis Anaya/OneDrive/Desktop/metodos para el analisis economico/UNIDAD II/IMAE-Centroamerica/IVAE-ES.xlsx", 
    col_types = c("numeric"))
data=ivae_ts_ES %>% ts(start = c(2009,1),frequency = 12)->ivae_ES
print(ivae_ES)
##         Jan    Feb    Mar    Apr    May    Jun    Jul    Aug    Sep    Oct
## 2009  86.73  80.85  87.19  83.92  91.42  93.46  86.39  86.72  87.57  85.27
## 2010  85.56  84.69  90.90  85.94  94.33  92.23  87.18  90.25  89.00  88.74
## 2011  90.27  86.73  94.32  90.79  98.50  97.59  92.16  94.22  92.33  89.06
## 2012  92.65  91.20  98.46  91.23 102.83 102.84  93.61  98.21  93.94  93.49
## 2013  95.67  90.77  96.12  96.34 103.08 101.58  96.42  98.96  97.74  96.22
## 2014  98.70  94.70 101.30  97.12 103.86 104.73  98.48  98.60  98.25  96.43
## 2015  98.87  94.82 103.15  98.75 105.65 105.45 101.67 101.06 100.64 100.44
## 2016  99.25  97.76 102.58 103.43 107.76 110.71 104.01 106.24 104.83 102.04
## 2017 101.41  98.97 108.44 101.40 110.85 113.63 105.51 107.88 106.21 103.28
## 2018 105.17 102.53 108.39 107.93 112.46 113.55 108.80 111.94 107.54 105.81
## 2019 108.10 106.41 113.02 109.95 114.95 114.86 111.24 113.28 111.66 108.32
## 2020 109.49 109.27 104.04  87.36  89.33  96.05  96.95 103.34 106.72 106.12
## 2021 106.84 107.04 114.51 109.72 115.43 115.19 112.16 114.23 113.82 109.73
## 2022 109.25 110.28 118.85 111.15 120.33 118.27 113.36 116.30              
##         Nov    Dec
## 2009  91.86  99.64
## 2010  93.13 100.74
## 2011  96.86 103.91
## 2012  99.61 105.05
## 2013 101.24 108.37
## 2014 100.64 107.19
## 2015 104.90 109.86
## 2016 106.50 114.98
## 2017 110.39 117.56
## 2018 112.16 120.03
## 2019 116.10 122.08
## 2020 110.70 119.86
## 2021 116.70 123.69
## 2022
autoplot(ivae_ES,xlab = "años",ylab = "Indice",main = "IVAE total, periodo 2009-2022 (agosto)")+theme_bw()

2. proyección a Seis meses

library(forecast)
modelo_ES<-auto.arima(y = ivae_ES)
summary(modelo)
## Series: ivae_CR 
## ARIMA(1,0,0)(0,1,1)[12] with drift 
## 
## Coefficients:
##          ar1     sma1   drift
##       0.8563  -0.5052  0.2377
## s.e.  0.0419   0.0810  0.0442
## 
## sigma^2 = 3.366:  log likelihood = -308.74
## AIC=625.48   AICc=625.76   BIC=637.58
## 
## Training set error measures:
##                      ME     RMSE      MAE         MPE     MAPE      MASE
## Training set 0.01259946 1.748727 1.157394 -0.00975326 1.211633 0.2864043
##                    ACF1
## Training set -0.0658692
pronosticos_ES<-forecast(modelo_ES,h = 6)
autoplot(pronosticos_ES)+xlab("Años")+ylab("indice")+theme_bw()

library(forecast)
autoplot(pronosticos_ES$x,series = "IVAE_ES")+autolayer(pronosticos_ES$fitted,series = "Pronóstico_ES")+ggtitle("Ajuste SARIMA")

3. Serie ampliada

ivae_h_ES<-ts(as.numeric(rbind(as.matrix(pronosticos_ES$x),as.matrix(pronosticos_ES$mean))),start = c(2009,1),frequency = 12)
print(ivae_h_ES)
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2009  86.7300  80.8500  87.1900  83.9200  91.4200  93.4600  86.3900  86.7200
## 2010  85.5600  84.6900  90.9000  85.9400  94.3300  92.2300  87.1800  90.2500
## 2011  90.2700  86.7300  94.3200  90.7900  98.5000  97.5900  92.1600  94.2200
## 2012  92.6500  91.2000  98.4600  91.2300 102.8300 102.8400  93.6100  98.2100
## 2013  95.6700  90.7700  96.1200  96.3400 103.0800 101.5800  96.4200  98.9600
## 2014  98.7000  94.7000 101.3000  97.1200 103.8600 104.7300  98.4800  98.6000
## 2015  98.8700  94.8200 103.1500  98.7500 105.6500 105.4500 101.6700 101.0600
## 2016  99.2500  97.7600 102.5800 103.4300 107.7600 110.7100 104.0100 106.2400
## 2017 101.4100  98.9700 108.4400 101.4000 110.8500 113.6300 105.5100 107.8800
## 2018 105.1700 102.5300 108.3900 107.9300 112.4600 113.5500 108.8000 111.9400
## 2019 108.1000 106.4100 113.0200 109.9500 114.9500 114.8600 111.2400 113.2800
## 2020 109.4900 109.2700 104.0400  87.3600  89.3300  96.0500  96.9500 103.3400
## 2021 106.8400 107.0400 114.5100 109.7200 115.4300 115.1900 112.1600 114.2300
## 2022 109.2500 110.2800 118.8500 111.1500 120.3300 118.2700 113.3600 116.3000
## 2023 113.6007 112.1216                                                      
##           Sep      Oct      Nov      Dec
## 2009  87.5700  85.2700  91.8600  99.6400
## 2010  89.0000  88.7400  93.1300 100.7400
## 2011  92.3300  89.0600  96.8600 103.9100
## 2012  93.9400  93.4900  99.6100 105.0500
## 2013  97.7400  96.2200 101.2400 108.3700
## 2014  98.2500  96.4300 100.6400 107.1900
## 2015 100.6400 100.4400 104.9000 109.8600
## 2016 104.8300 102.0400 106.5000 114.9800
## 2017 106.2100 103.2800 110.3900 117.5600
## 2018 107.5400 105.8100 112.1600 120.0300
## 2019 111.6600 108.3200 116.1000 122.0800
## 2020 106.7200 106.1200 110.7000 119.8600
## 2021 113.8200 109.7300 116.7000 123.6900
## 2022 115.3201 112.9454 118.8018 125.9326
## 2023

4. Descomposición de la serie temporal

library(stats)
fit_ES<-stl(ivae_h_ES,"periodic")
autoplot(fit_ES)+theme_bw()

TC_ES<-fit_ES$time.series[,2]
print(TC_ES)
##            Jan       Feb       Mar       Apr       May       Jun       Jul
## 2009  87.44441  87.60681  87.76921  87.92794  88.08667  88.25008  88.41348
## 2010  89.40028  89.55340  89.70651  89.86944  90.03236  90.22289  90.41342
## 2011  92.44334  92.80161  93.15988  93.39982  93.63975  93.84970  94.05965
## 2012  95.62347  95.95655  96.28962  96.54669  96.80376  96.94365  97.08353
## 2013  97.37067  97.57465  97.77863  98.01141  98.24418  98.49901  98.75383
## 2014  99.97696 100.08692 100.19688 100.19388 100.19088 100.13145 100.07202
## 2015 100.61674 100.90043 101.18412 101.48393 101.78373 101.98809 102.19245
## 2016 103.31134 103.67683 104.04231 104.37187 104.70143 104.96083 105.22023
## 2017 105.98874 106.19442 106.40010 106.64005 106.87999 107.13555 107.39110
## 2018 108.53384 108.78914 109.04444 109.27664 109.50885 109.71924 109.92962
## 2019 111.20285 111.44804 111.69322 111.95644 112.21966 112.39504 112.57042
## 2020 106.56927 105.30931 104.04934 103.38688 102.72442 102.59403 102.46364
## 2021 110.00438 110.88175 111.75911 112.26149 112.76387 113.08083 113.39780
## 2022 114.86324 115.06235 115.26147 115.47510 115.68873 115.83923 115.98974
## 2023 116.75131 116.86242                                                  
##            Aug       Sep       Oct       Nov       Dec
## 2009  88.59338  88.77329  88.95274  89.13219  89.26623
## 2010  90.66268  90.91194  91.25980  91.60766  92.02550
## 2011  94.26976  94.47988  94.72779  94.97570  95.29959
## 2012  97.10042  97.11730  97.14252  97.16774  97.26920
## 2013  99.00009  99.24636  99.44622  99.64608  99.81152
## 2014 100.05130 100.03057 100.12173 100.21288 100.41481
## 2015 102.28931 102.38617 102.54615 102.70613 103.00874
## 2016 105.37231 105.52438 105.61158 105.69878 105.84376
## 2017 107.59635 107.80160 107.96728 108.13297 108.33340
## 2018 110.15601 110.38239 110.58903 110.79568 110.99926
## 2019 112.33843 112.10644 110.95596 109.80548 108.18737
## 2020 103.18295 103.90226 105.45812 107.01397 108.50918
## 2021 113.63685 113.87590 114.12496 114.37401 114.61862
## 2022 116.12786 116.26598 116.39214 116.51830 116.63480
## 2023

5. Cálculo de las tasas

library(dplyr)
library(zoo)
TC_ES %>% as.numeric() %>% as.data.frame()->TC_df_ES
names(TC_df_ES)<-c("TC_ES")
TC_df_ES %>% mutate(T_1_1_ES=(TC_ES/dplyr::lag(TC_ES,n=1)-1)*100,
                 T_1_12_ES=(TC_ES/dplyr::lag(TC_ES,n=12)-1)*100,
                 T_12_12_ES=(rollapply(TC_ES,12,mean,align='right',fill=NA)
                          /rollapply(dplyr::lag(TC_ES,n=12),12,mean,align='right',fill=NA)-1)*100) %>%
          #Aquí se realiza el centrado
          mutate(T_1_12C_ES=dplyr::lead(T_1_12_ES,n = 6),
                 T_12_12C_ES=dplyr::lead(T_12_12_ES,n = 12)) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_ES
print(tail(tabla_coyuntura_ES,n=12))
##             TC_ES   T_1_1_ES T_1_12_ES T_12_12_ES T_1_12C_ES T_12_12C_ES
## Mar 2022 115.2615 0.17304748  3.133843   7.503904   2.098839          NA
## Apr 2022 115.4751 0.18534593  2.862610   7.009903   1.986578          NA
## May 2022 115.6887 0.18500303  2.593794   6.404204   1.874805          NA
## Jun 2022 115.8392 0.13009289  2.439316   5.758686   1.759034          NA
## Jul 2022 115.9897 0.12992386  2.285702   5.074966   1.643756          NA
## Aug 2022 116.1279 0.11907927  2.192074   4.432823   1.564430          NA
## Sep 2022 116.2660 0.11893764  2.098839   3.830585         NA          NA
## Oct 2022 116.3921 0.10850962  1.986578   3.328714         NA          NA
## Nov 2022 116.5183 0.10839200  1.874805   2.923816         NA          NA
## Dec 2022 116.6348 0.09999144  1.759034   2.608495         NA          NA
## Jan 2023 116.7513 0.09989156  1.643756   2.380675         NA          NA
## Feb 2023 116.8624 0.09516974  1.564430   2.198828         NA          NA

6. Gráfico de las tasas (centradas)

library(dplyr)
library(forecast)
library(ggplot2)
tabla_coyuntura_ES %>% as.data.frame() %>% select(T_1_12C_ES,T_12_12C_ES) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_graficos_ES
autoplot(tabla_coyuntura_graficos_ES)+theme_bw()

tabla_coyuntura_ES %>% as.data.frame() %>% select(T_1_1_ES) %>% ts(start = c(2009,1),frequency = 12) %>% autoplot()

GUATEMALA

1. importar los datos

library(ggplot2)
library(forecast)
library(readxl)
ivae_ts_GT <- read_excel("C:/Users/Luis Anaya/OneDrive/Desktop/metodos para el analisis economico/UNIDAD II/IMAE-Centroamerica/IVAE-GT.xlsx", 
    col_types = c("numeric"))
data=ivae_ts_GT %>% ts(start = c(2009,1),frequency = 12)->ivae_GT
print(ivae_GT)
##         Jan    Feb    Mar    Apr    May    Jun    Jul    Aug    Sep    Oct
## 2009  86.65  84.95  90.17  87.79  85.69  83.92  87.09  85.90  84.65  87.06
## 2010  88.43  87.09  94.14  89.68  88.28  87.49  88.03  87.35  86.92  88.69
## 2011  92.16  91.28  96.96  93.60  92.20  91.60  92.65  92.61  92.08  91.78
## 2012  95.05  94.95 101.10  95.13  95.58  94.13  94.97  95.31  94.02  96.32
## 2013  99.07  98.81 101.72 101.20  99.50  96.72  98.64  98.67  97.72  99.48
## 2014 102.75 102.57 106.76 104.80 104.40 101.05 103.78 102.20 101.78 103.90
## 2015 107.76 107.15 111.74 107.66 106.67 105.63 108.72 107.53 106.64 108.45
## 2016 109.74 109.44 112.96 112.29 111.12 108.40 109.35 110.41 109.80 110.43
## 2017 115.42 114.30 118.07 114.70 113.72 111.63 113.82 113.93 112.07 113.68
## 2018 117.75 117.77 121.77 119.59 118.71 116.35 118.22 118.04 115.42 117.98
## 2019 122.08 122.76 126.05 123.95 123.67 120.45 122.93 121.94 120.78 122.99
## 2020 127.01 125.51 121.38 112.73 111.49 111.55 118.50 120.60 121.73 125.20
## 2021 128.88 128.61 133.29 130.06 130.01 127.53 131.22 130.13 128.77 130.62
## 2022 134.95 134.14 139.23 135.83 135.53 132.00 135.09 136.00              
##         Nov    Dec
## 2009  87.94  95.19
## 2010  91.35  98.92
## 2011  95.86 101.43
## 2012  98.92 104.11
## 2013 102.16 106.30
## 2014 107.09 112.27
## 2015 111.44 115.24
## 2016 114.99 120.63
## 2017 116.91 122.56
## 2018 121.04 125.20
## 2019 126.94 130.45
## 2020 128.05 135.04
## 2021 135.34 140.77
## 2022
autoplot(ivae_GT,xlab = "años",ylab = "Indice",main = "IVAE total, periodo 2009-2022 (agosto)")+theme_bw()

2. proyección a Seis meses

library(forecast)
modelo_GT<-auto.arima(y = ivae_GT)
summary(modelo_GT)
## Series: ivae_GT 
## ARIMA(1,0,1)(0,1,1)[12] with drift 
## 
## Coefficients:
##          ar1     ma1     sma1   drift
##       0.7713  0.2210  -0.7828  0.3054
## s.e.  0.0643  0.1038   0.0736  0.0151
## 
## sigma^2 = 1.961:  log likelihood = -271.08
## AIC=552.16   AICc=552.57   BIC=567.28
## 
## Training set error measures:
##                       ME     RMSE       MAE         MPE      MAPE      MASE
## Training set -0.02077232 1.330162 0.8846027 -0.03576932 0.8034655 0.2047349
##                     ACF1
## Training set 0.003034942
pronosticos_GT<-forecast(modelo_GT,h = 6)
autoplot(pronosticos_GT)+xlab("Años")+ylab("indice")+theme_bw()

library(forecast)
autoplot(pronosticos_GT$x,series = "IVAE_GT")+autolayer(pronosticos_GT$fitted,series = "Pronóstico_GT")+ggtitle("Ajuste SARIMA")

3. Serie ampliada

ivae_h_GT<-ts(as.numeric(rbind(as.matrix(pronosticos_GT$x),as.matrix(pronosticos_GT$mean))),start = c(2009,1),frequency = 12)
print(ivae_h_GT)
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2009  86.6500  84.9500  90.1700  87.7900  85.6900  83.9200  87.0900  85.9000
## 2010  88.4300  87.0900  94.1400  89.6800  88.2800  87.4900  88.0300  87.3500
## 2011  92.1600  91.2800  96.9600  93.6000  92.2000  91.6000  92.6500  92.6100
## 2012  95.0500  94.9500 101.1000  95.1300  95.5800  94.1300  94.9700  95.3100
## 2013  99.0700  98.8100 101.7200 101.2000  99.5000  96.7200  98.6400  98.6700
## 2014 102.7500 102.5700 106.7600 104.8000 104.4000 101.0500 103.7800 102.2000
## 2015 107.7600 107.1500 111.7400 107.6600 106.6700 105.6300 108.7200 107.5300
## 2016 109.7400 109.4400 112.9600 112.2900 111.1200 108.4000 109.3500 110.4100
## 2017 115.4200 114.3000 118.0700 114.7000 113.7200 111.6300 113.8200 113.9300
## 2018 117.7500 117.7700 121.7700 119.5900 118.7100 116.3500 118.2200 118.0400
## 2019 122.0800 122.7600 126.0500 123.9500 123.6700 120.4500 122.9300 121.9400
## 2020 127.0100 125.5100 121.3800 112.7300 111.4900 111.5500 118.5000 120.6000
## 2021 128.8800 128.6100 133.2900 130.0600 130.0100 127.5300 131.2200 130.1300
## 2022 134.9500 134.1400 139.2300 135.8300 135.5300 132.0000 135.0900 136.0000
## 2023 138.2722 137.4518                                                      
##           Sep      Oct      Nov      Dec
## 2009  84.6500  87.0600  87.9400  95.1900
## 2010  86.9200  88.6900  91.3500  98.9200
## 2011  92.0800  91.7800  95.8600 101.4300
## 2012  94.0200  96.3200  98.9200 104.1100
## 2013  97.7200  99.4800 102.1600 106.3000
## 2014 101.7800 103.9000 107.0900 112.2700
## 2015 106.6400 108.4500 111.4400 115.2400
## 2016 109.8000 110.4300 114.9900 120.6300
## 2017 112.0700 113.6800 116.9100 122.5600
## 2018 115.4200 117.9800 121.0400 125.2000
## 2019 120.7800 122.9900 126.9400 130.4500
## 2020 121.7300 125.2000 128.0500 135.0400
## 2021 128.7700 130.6200 135.3400 140.7700
## 2022 134.5206 135.8710 138.8395 143.6604
## 2023

4. Descomposición de la serie temporal

library(stats)
fit_GT<-stl(ivae_h_GT,"periodic")
autoplot(fit_GT)+theme_bw()

TC_GT<-fit_GT$time.series[,2]
print(TC_GT)
##            Jan       Feb       Mar       Apr       May       Jun       Jul
## 2009  86.09008  86.30302  86.51596  86.71982  86.92368  87.12729  87.33089
## 2010  88.53281  88.72066  88.90851  89.12271  89.33692  89.59679  89.85667
## 2011  91.78915  92.20768  92.62621  92.98308  93.33995  93.61345  93.88695
## 2012  95.24916  95.49768  95.74620  96.02047  96.29475  96.56285  96.83096
## 2013  98.53034  98.84162  99.15290  99.43610  99.71930  99.97623 100.23316
## 2014 102.25034 102.65769 103.06505 103.46722 103.86939 104.26684 104.66429
## 2015 106.68884 107.10688 107.52491 107.90992 108.29492 108.56914 108.84337
## 2016 110.11376 110.33485 110.55594 110.83925 111.12257 111.49962 111.87668
## 2017 113.85089 114.13063 114.41037 114.61709 114.82382 115.00432 115.18482
## 2018 117.20653 117.60276 117.99900 118.34025 118.68149 118.96865 119.25582
## 2019 121.38350 121.83398 122.28446 122.73258 123.18071 123.55110 123.92150
## 2020 121.49722 121.07874 120.66026 120.62439 120.58853 120.91143 121.23433
## 2021 127.78876 128.59284 129.39692 129.96385 130.53078 131.02998 131.52918
## 2022 134.24461 134.67660 135.10859 135.50207 135.89556 136.14844 136.40131
## 2023 137.77995 137.98816                                                  
##            Aug       Sep       Oct       Nov       Dec
## 2009  87.53974  87.74860  87.93975  88.13090  88.33186
## 2010  90.13258  90.40849  90.71422  91.01994  91.40454
## 2011  94.12413  94.36131  94.57943  94.79755  95.02335
## 2012  97.08317  97.33538  97.61995  97.90451  98.21743
## 2013 100.50400 100.77484 101.11441 101.45398 101.85216
## 2014 105.01068 105.35707 105.66390 105.97072 106.32978
## 2015 109.03790 109.23242 109.44991 109.66740 109.89058
## 2016 112.25606 112.63543 112.94838 113.26134 113.55611
## 2017 115.43138 115.67793 116.03206 116.38619 116.79636
## 2018 119.54944 119.84307 120.19695 120.55084 120.96717
## 2019 123.95291 123.98431 123.45808 122.93185 122.21453
## 2020 122.05405 122.87377 124.14059 125.40742 126.59809
## 2021 132.00580 132.48241 132.93393 133.38544 133.81503
## 2022 136.63967 136.87802 137.10971 137.34140 137.56068
## 2023

5. Cálculo de las tasas

library(dplyr)
library(zoo)
TC_GT %>% as.numeric() %>% as.data.frame()->TC_df_GT
names(TC_df_GT)<-c("TC_GT")
TC_df_GT %>% mutate(T_1_1_GT=(TC_GT/dplyr::lag(TC_GT,n=1)-1)*100,
                 T_1_12_GT=(TC_GT/dplyr::lag(TC_GT,n=12)-1)*100,
                 T_12_12_GT=(rollapply(TC_GT,12,mean,align='right',fill=NA)
                          /rollapply(dplyr::lag(TC_GT,n=12),12,mean,align='right',fill=NA)-1)*100) %>%
          #Aquí se realiza el centrado
          mutate(T_1_12C_GT=dplyr::lead(T_1_12_GT,n = 6),
                 T_12_12C_GT=dplyr::lead(T_12_12_GT,n = 12)) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_GT
print(tail(tabla_coyuntura_GT,n=12))
##             TC_GT  T_1_1_GT T_1_12_GT T_12_12_GT T_1_12C_GT T_12_12C_GT
## Mar 2022 135.1086 0.3207585  4.414071   6.810785   3.317881          NA
## Apr 2022 135.5021 0.2912372  4.261359   6.514875   3.141249          NA
## May 2022 135.8956 0.2903915  4.109973   6.168720   2.965813          NA
## Jun 2022 136.1484 0.1860811  3.906326   5.798607   2.799125          NA
## Jul 2022 136.4013 0.1857355  3.704225   5.405140   2.633505          NA
## Aug 2022 136.6397 0.1747457  3.510356   5.024860   2.458894          NA
## Sep 2022 136.8780 0.1744409  3.317881   4.657259         NA          NA
## Oct 2022 137.1097 0.1692665  3.141249   4.334650         NA          NA
## Nov 2022 137.3414 0.1689805  2.965813   4.055773         NA          NA
## Dec 2022 137.5607 0.1596577  2.799125   3.816555         NA          NA
## Jan 2023 137.7800 0.1594032  2.633505   3.616106         NA          NA
## Feb 2023 137.9882 0.1511127  2.458894   3.427442         NA          NA

6. Gráfico de las tasas (centradas)

library(dplyr)
library(forecast)
library(ggplot2)
tabla_coyuntura_GT %>% as.data.frame() %>% select(T_1_12C_GT,T_12_12C_GT) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_graficos_GT
autoplot(tabla_coyuntura_graficos_GT)+theme_bw()

tabla_coyuntura_GT %>% as.data.frame() %>% select(T_1_1_GT) %>% ts(start = c(2009,1),frequency = 12) %>% autoplot()

HONDURAS

1. importar los datos

library(ggplot2)
library(forecast)
library(readxl)
ivae_ts_HD <- read_excel("C:/Users/Luis Anaya/OneDrive/Desktop/metodos para el analisis economico/UNIDAD II/IMAE-Centroamerica/IVAE-HD.xlsx", 
    col_types = c("numeric"))
data=ivae_ts_HD %>% ts(start = c(2009,1),frequency = 12)->ivae_HD
print(ivae_HD)
##         Jan    Feb    Mar    Apr    May    Jun    Jul    Aug    Sep    Oct
## 2009 157.26 159.33 169.91 156.18 164.17 163.04 155.42 159.89 157.82 166.33
## 2010 165.28 166.91 179.91 165.46 173.89 171.00 162.53 166.65 175.18 172.00
## 2011 176.96 179.46 190.71 175.18 184.30 182.33 175.83 185.67 182.03 185.82
## 2012 181.51 189.25 202.52 183.81 193.45 192.28 185.89 193.61 188.79 199.97
## 2013 189.68 192.66 196.37 195.49 199.00 194.38 190.45 196.66 191.32 201.79
## 2014 194.20 197.58 205.41 197.36 207.03 198.09 194.18 199.21 197.73 205.50
## 2015 200.82 202.02 214.06 206.39 206.66 206.13 201.94 207.78 204.91 213.81
## 2016 207.87 210.56 220.51 211.07 214.45 216.00 205.61 215.98 212.31 220.76
## 2017 219.37 221.50 233.93 218.03 225.53 225.90 216.75 229.08 226.26 232.75
## 2018 228.97 228.12 237.11 227.12 234.88 234.03 225.04 238.66 232.55 244.93
## 2019 235.30 235.08 246.40 234.80 241.51 235.46 238.02 244.65 239.69 252.72
## 2020 242.49 241.65 218.27 186.88 189.07 208.71 209.30 225.80 230.24 249.34
## 2021 229.97 236.28 251.05 235.96 242.36 247.40 239.81 256.77 246.87 265.45
## 2022 247.40 246.66 263.79 248.85 254.82 256.38 246.21 272.05              
##         Nov    Dec
## 2009 163.97 176.16
## 2010 175.48 186.89
## 2011 188.18 198.66
## 2012 199.48 203.10
## 2013 201.54 213.57
## 2014 203.26 221.72
## 2015 214.73 231.40
## 2016 227.59 245.58
## 2017 235.80 251.23
## 2018 245.16 262.48
## 2019 250.26 273.80
## 2020 218.89 258.08
## 2021 264.73 279.05
## 2022
autoplot(ivae_HD,xlab = "años",ylab = "Indice",main = "IVAE total, periodo 2009-2022 (agosto)")+theme_bw()

2. proyección a Seis meses

library(forecast)
modelo_HD<-auto.arima(y = ivae_HD)
summary(modelo_HD)
## Series: ivae_HD 
## ARIMA(1,0,0)(0,1,1)[12] with drift 
## 
## Coefficients:
##          ar1     sma1   drift
##       0.7873  -0.6830  0.5907
## s.e.  0.0505   0.0664  0.0755
## 
## sigma^2 = 40.51:  log likelihood = -499.7
## AIC=1007.39   AICc=1007.67   BIC=1019.49
## 
## Training set error measures:
##                     ME     RMSE      MAE         MPE     MAPE      MASE
## Training set 0.1146993 6.066968 3.641296 0.003653743 1.685704 0.3223399
##                     ACF1
## Training set -0.03150273
pronosticos_HD<-forecast(modelo_HD,h = 6)
autoplot(pronosticos_HD)+xlab("Años")+ylab("indice")+theme_bw()

library(forecast)
autoplot(pronosticos_HD$x,series = "IVAE_HD")+autolayer(pronosticos_HD$fitted,series = "Pronóstico")+ggtitle("Ajuste SARIMA")

3. Serie ampliada

ivae_h_HD<-ts(as.numeric(rbind(as.matrix(pronosticos_HD$x),as.matrix(pronosticos_HD$mean))),start = c(2009,1),frequency = 12)
print(ivae_h_HD)
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2009 157.2600 159.3300 169.9100 156.1800 164.1700 163.0400 155.4200 159.8900
## 2010 165.2800 166.9100 179.9100 165.4600 173.8900 171.0000 162.5300 166.6500
## 2011 176.9600 179.4600 190.7100 175.1800 184.3000 182.3300 175.8300 185.6700
## 2012 181.5100 189.2500 202.5200 183.8100 193.4500 192.2800 185.8900 193.6100
## 2013 189.6800 192.6600 196.3700 195.4900 199.0000 194.3800 190.4500 196.6600
## 2014 194.2000 197.5800 205.4100 197.3600 207.0300 198.0900 194.1800 199.2100
## 2015 200.8200 202.0200 214.0600 206.3900 206.6600 206.1300 201.9400 207.7800
## 2016 207.8700 210.5600 220.5100 211.0700 214.4500 216.0000 205.6100 215.9800
## 2017 219.3700 221.5000 233.9300 218.0300 225.5300 225.9000 216.7500 229.0800
## 2018 228.9700 228.1200 237.1100 227.1200 234.8800 234.0300 225.0400 238.6600
## 2019 235.3000 235.0800 246.4000 234.8000 241.5100 235.4600 238.0200 244.6500
## 2020 242.4900 241.6500 218.2700 186.8800 189.0700 208.7100 209.3000 225.8000
## 2021 229.9700 236.2800 251.0500 235.9600 242.3600 247.4000 239.8100 256.7700
## 2022 247.4000 246.6600 263.7900 248.8500 254.8200 256.3800 246.2100 272.0500
## 2023 260.0533 260.4929                                                      
##           Sep      Oct      Nov      Dec
## 2009 157.8200 166.3300 163.9700 176.1600
## 2010 175.1800 172.0000 175.4800 186.8900
## 2011 182.0300 185.8200 188.1800 198.6600
## 2012 188.7900 199.9700 199.4800 203.1000
## 2013 191.3200 201.7900 201.5400 213.5700
## 2014 197.7300 205.5000 203.2600 221.7200
## 2015 204.9100 213.8100 214.7300 231.4000
## 2016 212.3100 220.7600 227.5900 245.5800
## 2017 226.2600 232.7500 235.8000 251.2300
## 2018 232.5500 244.9300 245.1600 262.4800
## 2019 239.6900 252.7200 250.2600 273.8000
## 2020 230.2400 249.3400 218.8900 258.0800
## 2021 246.8700 265.4500 264.7300 279.0500
## 2022 265.0273 277.6196 269.2035 289.3760
## 2023

4. Descomposición de la serie temporal

library(stats)
fit_HD<-stl(ivae_h_HD,"periodic")
autoplot(fit_HD)+theme_bw()

TC_HD<-fit_HD$time.series[,2]
print(TC_HD)
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2009 162.8876 162.9517 163.0158 163.1275 163.2391 163.4417 163.6442 163.9238
## 2010 167.0259 168.0562 169.0865 170.0038 170.9212 171.6406 172.3601 173.0454
## 2011 177.8866 179.1965 180.5064 181.5954 182.6843 183.3903 184.0963 184.6439
## 2012 188.4347 189.4045 190.3742 191.3033 192.2324 192.7782 193.3240 193.4678
## 2013 194.8124 195.2251 195.6378 196.0376 196.4374 196.8345 197.2317 197.5490
## 2014 199.5782 200.0934 200.6086 201.0200 201.4314 201.7750 202.1186 202.4678
## 2015 205.0899 205.8976 206.7054 207.4722 208.2389 208.8818 209.5247 210.0345
## 2016 213.0172 213.7135 214.4099 215.1533 215.8968 216.7678 217.6389 218.5653
## 2017 223.3705 224.4095 225.4485 226.2878 227.1271 227.7551 228.3832 228.9433
## 2018 232.1603 232.9141 233.6678 234.4480 235.2282 236.0121 236.7961 237.4834
## 2019 240.4422 241.0222 241.6021 242.1957 242.7893 243.4263 244.0633 243.7322
## 2020 232.0458 229.5273 227.0088 225.2762 223.5436 222.7538 221.9640 223.2831
## 2021 237.1843 239.4827 241.7810 243.9920 246.2031 248.2324 250.2618 251.6008
## 2022 256.2707 257.1168 257.9629 258.9847 260.0066 261.0966 262.1866 263.1606
## 2023 268.2118 269.1821                                                      
##           Sep      Oct      Nov      Dec
## 2009 164.2034 164.7062 165.2091 166.1175
## 2010 173.7308 174.6318 175.5328 176.7097
## 2011 185.1914 185.9138 186.6361 187.5354
## 2012 193.6116 193.8114 194.0111 194.4117
## 2013 197.8663 198.2322 198.5980 199.0881
## 2014 202.8171 203.2811 203.7450 204.4174
## 2015 210.5443 211.0894 211.6346 212.3259
## 2016 219.4916 220.4133 221.3350 222.3528
## 2017 229.5034 230.1131 230.7228 231.4416
## 2018 238.1707 238.7467 239.3226 239.8824
## 2019 243.4011 240.9759 238.5508 235.2983
## 2020 224.6022 227.8077 231.0132 234.0988
## 2021 252.9398 253.8525 254.7652 255.5180
## 2022 264.1345 265.1570 266.1796 267.1957
## 2023

5. Cálculo de las tasas

library(dplyr)
library(zoo)
TC_HD %>% as.numeric() %>% as.data.frame()->TC_df_HD
names(TC_df_HD)<-c("TC_HD")
TC_df_HD %>% mutate(T_1_1_HD=(TC_HD/dplyr::lag(TC_HD,n=1)-1)*100,
                 T_1_12_HD=(TC_HD/dplyr::lag(TC_HD,n=12)-1)*100,
                 T_12_12_HD=(rollapply(TC_HD,12,mean,align='right',fill=NA)
                          /rollapply(dplyr::lag(TC_HD,n=12),12,mean,align='right',fill=NA)-1)*100) %>%
          #Aquí se realiza el centrado
          mutate(T_1_12C_HD=dplyr::lead(T_1_12_HD,n = 6),
                 T_12_12C_HD=dplyr::lead(T_12_12_HD,n = 12)) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_HD
print(tail(tabla_coyuntura_HD,n=12))
##             TC_HD  T_1_1_HD T_1_12_HD T_12_12_HD T_1_12C_HD T_12_12C_HD
## Mar 2022 257.9629 0.3290734  6.692787  10.023478   4.425851          NA
## Apr 2022 258.9847 0.3961268  6.144756   9.821455   4.453188          NA
## May 2022 260.0066 0.3945638  5.606569   9.424866   4.480330          NA
## Jun 2022 261.0966 0.4192279  5.182314   8.892326   4.570211          NA
## Jul 2022 262.1866 0.4174777  4.764940   8.229065   4.659564          NA
## Aug 2022 263.1606 0.3714689  4.594493   7.565418   4.692544          NA
## Sep 2022 264.1345 0.3700942  4.425851   6.901411         NA          NA
## Oct 2022 265.1570 0.3871194  4.453188   6.337106         NA          NA
## Nov 2022 266.1796 0.3856266  4.480330   5.868554         NA          NA
## Dec 2022 267.1957 0.3817371  4.570211   5.498958         NA          NA
## Jan 2023 268.2118 0.3802854  4.659564   5.225332         NA          NA
## Feb 2023 269.1821 0.3617760  4.692544   5.009890         NA          NA

6. Gráfico de las tasas (centradas)

library(dplyr)
library(forecast)
library(ggplot2)
tabla_coyuntura_HD %>% as.data.frame() %>% select(T_1_12C_HD,T_12_12C_HD) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_graficos_HD
autoplot(tabla_coyuntura_graficos_HD)+theme_bw()

tabla_coyuntura_HD %>% as.data.frame() %>% select(T_1_1_HD) %>% ts(start = c(2009,1),frequency = 12) %>% autoplot()

NICARAGUA

1. importar los datos

library(ggplot2)
library(forecast)
library(readxl)
ivae_ts_NG <- read_excel("C:/Users/Luis Anaya/OneDrive/Desktop/metodos para el analisis economico/UNIDAD II/IMAE-Centroamerica/IVAE-NG.xlsx", 
    col_types = c("numeric"))
data=ivae_ts_NG %>% ts(start = c(2009,1),frequency = 12)->ivae_NG
print(ivae_NG)
##         Jan    Feb    Mar    Apr    May    Jun    Jul    Aug    Sep    Oct
## 2009 105.02  99.61  99.82  97.86 105.33 102.92 111.29 106.11 100.80 103.08
## 2010 107.22 102.04 106.17 100.25 108.47 107.98 116.44 110.70 106.35 110.07
## 2011 112.84 105.40 114.89 106.19 118.58 116.46 126.36 118.61 112.82 113.74
## 2012 128.39 116.85 118.64 112.51 126.31 118.10 130.29 123.88 117.08 126.19
## 2013 132.07 122.40 122.30 126.76 132.79 123.18 138.36 130.19 125.12 130.05
## 2014 135.67 129.80 132.03 128.86 139.04 130.03 143.73 133.05 131.24 137.49
## 2015 141.73 135.06 139.10 131.32 143.71 134.69 151.29 141.67 141.01 146.60
## 2016 148.01 141.73 143.00 140.87 153.13 144.24 155.80 149.66 143.57 149.07
## 2017 159.90 150.21 154.66 144.21 159.98 150.52 161.86 154.39 147.57 154.82
## 2018 165.61 154.20 158.41 150.62 151.56 130.54 153.23 148.98 141.06 143.07
## 2019 151.81 138.11 139.71 137.92 145.19 135.01 150.32 143.56 138.82 147.62
## 2020 153.26 145.11 140.70 124.93 134.77 130.15 148.61 139.39 140.77 148.10
## 2021 155.55 148.15 152.24 145.97 159.52 155.10 165.86 154.92 151.38 160.56
## 2022 166.46 154.54 161.05 153.45 167.00 159.88 171.47 162.14              
##         Nov    Dec
## 2009 109.25 120.21
## 2010 116.56 124.67
## 2011 125.90 128.32
## 2012 130.71 142.11
## 2013 134.02 147.29
## 2014 141.38 157.08
## 2015 148.63 163.14
## 2016 155.85 171.41
## 2017 164.86 176.56
## 2018 153.82 165.28
## 2019 154.01 165.59
## 2020 145.86 164.76
## 2021 165.89 178.74
## 2022
autoplot(ivae_NG,xlab = "años",ylab = "Indice",main = "IVAE total, periodo 2009-2022 (agosto)")+theme_bw()

2. proyección a Seis meses

library(forecast)
modelo_NG<-auto.arima(y = ivae_NG)
summary(modelo_NG)
## Series: ivae_NG 
## ARIMA(0,1,1)(0,1,1)[12] 
## 
## Coefficients:
##           ma1     sma1
##       -0.3537  -0.7810
## s.e.   0.0846   0.0849
## 
## sigma^2 = 13.89:  log likelihood = -417.63
## AIC=841.26   AICc=841.43   BIC=850.31
## 
## Training set error measures:
##                        ME     RMSE      MAE         MPE     MAPE      MASE
## Training set -0.006354953 3.552934 2.507137 -0.04779629 1.811255 0.3464344
##                    ACF1
## Training set 0.02811544
pronosticos_NG<-forecast(modelo_NG,h = 6)
autoplot(pronosticos_NG)+xlab("Años")+ylab("indice")+theme_bw()

library(forecast)
autoplot(pronosticos_NG$x,series = "IVAE_NG")+autolayer(pronosticos_NG$fitted,series = "Pronóstico")+ggtitle("Ajuste SARIMA")

3. Serie ampliada

ivae_h_NG<-ts(as.numeric(rbind(as.matrix(pronosticos_NG$x),as.matrix(pronosticos_NG$mean))),start = c(2009,1),frequency = 12)
print(ivae_h_NG)
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2009 105.0200  99.6100  99.8200  97.8600 105.3300 102.9200 111.2900 106.1100
## 2010 107.2200 102.0400 106.1700 100.2500 108.4700 107.9800 116.4400 110.7000
## 2011 112.8400 105.4000 114.8900 106.1900 118.5800 116.4600 126.3600 118.6100
## 2012 128.3900 116.8500 118.6400 112.5100 126.3100 118.1000 130.2900 123.8800
## 2013 132.0700 122.4000 122.3000 126.7600 132.7900 123.1800 138.3600 130.1900
## 2014 135.6700 129.8000 132.0300 128.8600 139.0400 130.0300 143.7300 133.0500
## 2015 141.7300 135.0600 139.1000 131.3200 143.7100 134.6900 151.2900 141.6700
## 2016 148.0100 141.7300 143.0000 140.8700 153.1300 144.2400 155.8000 149.6600
## 2017 159.9000 150.2100 154.6600 144.2100 159.9800 150.5200 161.8600 154.3900
## 2018 165.6100 154.2000 158.4100 150.6200 151.5600 130.5400 153.2300 148.9800
## 2019 151.8100 138.1100 139.7100 137.9200 145.1900 135.0100 150.3200 143.5600
## 2020 153.2600 145.1100 140.7000 124.9300 134.7700 130.1500 148.6100 139.3900
## 2021 155.5500 148.1500 152.2400 145.9700 159.5200 155.1000 165.8600 154.9200
## 2022 166.4600 154.5400 161.0500 153.4500 167.0000 159.8800 171.4700 162.1400
## 2023 172.7231 163.1444                                                      
##           Sep      Oct      Nov      Dec
## 2009 100.8000 103.0800 109.2500 120.2100
## 2010 106.3500 110.0700 116.5600 124.6700
## 2011 112.8200 113.7400 125.9000 128.3200
## 2012 117.0800 126.1900 130.7100 142.1100
## 2013 125.1200 130.0500 134.0200 147.2900
## 2014 131.2400 137.4900 141.3800 157.0800
## 2015 141.0100 146.6000 148.6300 163.1400
## 2016 143.5700 149.0700 155.8500 171.4100
## 2017 147.5700 154.8200 164.8600 176.5600
## 2018 141.0600 143.0700 153.8200 165.2800
## 2019 138.8200 147.6200 154.0100 165.5900
## 2020 140.7700 148.1000 145.8600 164.7600
## 2021 151.3800 160.5600 165.8900 178.7400
## 2022 159.0292 165.7788 170.9124 184.3560
## 2023

4. Descomposición de la serie temporal

library(stats)
fit_NG<-stl(ivae_h_NG,"periodic")
autoplot(fit_NG)+theme_bw()

TC_NG<-fit_NG$time.series[,2]
print(TC_NG)
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2009 103.7493 104.0273 104.3053 104.5522 104.7991 105.0399 105.2807 105.5338
## 2010 106.8873 107.3986 107.9099 108.5317 109.1534 109.6689 110.1845 110.5972
## 2011 113.3408 114.0870 114.8332 115.5607 116.2881 117.0093 117.7305 118.3535
## 2012 120.6025 121.1265 121.6505 122.3300 123.0095 123.6555 124.3014 124.8330
## 2013 127.7840 128.3821 128.9801 129.4638 129.9475 130.3454 130.7434 131.1442
## 2014 133.4098 133.9437 134.4777 135.0741 135.6706 136.2539 136.8371 137.2933
## 2015 139.5108 140.1699 140.8291 141.5383 142.2475 142.8758 143.5041 144.0479
## 2016 146.9601 147.4552 147.9503 148.4318 148.9133 149.5803 150.2472 150.9684
## 2017 154.0116 154.5053 154.9990 155.4325 155.8659 156.2887 156.7114 157.1097
## 2018 156.4341 155.5570 154.6799 153.6372 152.5945 151.4121 150.2296 149.0951
## 2019 145.8677 145.6305 145.3932 145.3310 145.2688 145.4596 145.6503 145.8657
## 2020 144.4463 143.9701 143.4940 143.1545 142.8150 142.7980 142.7809 143.5211
## 2021 150.7909 152.1988 153.6067 154.8369 156.0671 157.1425 158.2179 158.9638
## 2022 161.9079 162.4551 163.0022 163.5030 164.0037 164.5176 165.0315 165.5431
## 2023 168.0643 168.5643                                                      
##           Sep      Oct      Nov      Dec
## 2009 105.7869 106.0015 106.2161 106.5517
## 2010 111.0099 111.4965 111.9832 112.6620
## 2011 118.9764 119.4016 119.8268 120.2147
## 2012 125.3646 125.9582 126.5519 127.1679
## 2013 131.5450 131.9874 132.4298 132.9198
## 2014 137.7495 138.1409 138.5323 139.0216
## 2015 144.5918 145.1779 145.7641 146.3621
## 2016 151.6896 152.3030 152.9164 153.4640
## 2017 157.5080 157.5537 157.5994 157.0167
## 2018 147.9606 147.2267 146.4929 146.1803
## 2019 146.0812 145.8251 145.5690 145.0077
## 2020 144.2612 145.8037 147.3461 149.0685
## 2021 159.7097 160.2730 160.8362 161.3721
## 2022 166.0546 166.5586 167.0626 167.5634
## 2023

5. Cálculo de las tasas

library(dplyr)
library(zoo)
TC_NG %>% as.numeric() %>% as.data.frame()->TC_df_NG
names(TC_df_NG)<-c("TC_NG")
TC_df_NG %>% mutate(T_1_1_NG=(TC_NG/dplyr::lag(TC_NG,n=1)-1)*100,
                 T_1_12_NG=(TC_NG/dplyr::lag(TC_NG,n=12)-1)*100,
                 T_12_12_NG=(rollapply(TC_NG,12,mean,align='right',fill=NA)
                          /rollapply(dplyr::lag(TC_NG,n=12),12,mean,align='right',fill=NA)-1)*100) %>%
          #Aquí se realiza el centrado
          mutate(T_1_12C_NG=dplyr::lead(T_1_12_NG,n = 6),
                 T_12_12C_NG=dplyr::lead(T_12_12_NG,n = 12)) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_NG
print(tail(tabla_coyuntura_NG,n=12))
##             TC_NG  T_1_1_NG T_1_12_NG T_12_12_NG T_1_12C_NG T_12_12C_NG
## Mar 2022 163.0022 0.3368023  6.116578   8.909336   3.972759          NA
## Apr 2022 163.5030 0.3072118  5.596903   8.680095   3.921813          NA
## May 2022 164.0037 0.3062709  5.085420   8.317480   3.871223          NA
## Jun 2022 164.5176 0.3133459  4.693295   7.863361   3.836692          NA
## Jul 2022 165.0315 0.3123671  4.306500   7.320730   3.802390          NA
## Aug 2022 165.5431 0.3099693  4.138847   6.774102   3.760576          NA
## Sep 2022 166.0546 0.3090114  3.972759   6.223585         NA          NA
## Oct 2022 166.5586 0.3034992  3.921813   5.734717         NA          NA
## Nov 2022 167.0626 0.3025809  3.871223   5.305303         NA          NA
## Dec 2022 167.5634 0.2997978  3.836692   4.946231         NA          NA
## Jan 2023 168.0643 0.2989017  3.802390   4.655458         NA          NA
## Feb 2023 168.5643 0.2975219  3.760576   4.412752         NA          NA

6. Gráfico de las tasas (centradas)

library(dplyr)
library(forecast)
library(ggplot2)
tabla_coyuntura_NG %>% as.data.frame() %>% select(T_1_12C_NG,T_12_12C_NG) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_graficos_NG
autoplot(tabla_coyuntura_graficos_NG)+theme_bw()

tabla_coyuntura_NG %>% as.data.frame() %>% select(T_1_1_NG) %>% ts(start = c(2009,1),frequency = 12) %>% autoplot()

PANAMÁ

1. importar los datos

library(ggplot2)
library(forecast)
library(readxl)
ivae_ts_PN <- read_excel("C:/Users/Luis Anaya/OneDrive/Desktop/metodos para el analisis economico/UNIDAD II/IMAE-Centroamerica/IVAE-PN.xlsx", 
    col_types = c("numeric"))
data=ivae_ts_PN %>% ts(start = c(2009,1),frequency = 12)->ivae_PN
print(ivae_PN)
##         Jan    Feb    Mar    Apr    May    Jun    Jul    Aug    Sep    Oct
## 2009 195.71 189.71 204.64 188.06 193.65 199.60 188.20 190.96 195.45 204.89
## 2010 201.01 200.42 220.03 203.11 202.73 210.75 198.31 206.22 205.20 213.91
## 2011 212.36 218.50 228.61 218.93 227.12 226.92 210.41 225.69 222.92 233.74
## 2012 233.23 237.88 260.05 237.89 248.64 251.02 239.86 246.47 238.38 249.62
## 2013 253.29 254.04 276.60 262.60 268.38 269.16 256.27 265.08 259.72 280.51
## 2014 265.09 267.31 286.56 275.53 274.45 283.35 268.30 278.43 272.53 296.66
## 2015 281.48 276.75 307.31 280.85 281.06 294.76 279.85 290.40 283.40 310.57
## 2016 292.53 289.67 318.79 292.13 296.56 306.77 293.76 303.34 296.96 322.82
## 2017 305.84 307.27 344.01 309.60 316.06 324.68 304.97 318.19 310.13 335.94
## 2018 320.57 323.91 349.99 311.69 317.94 324.94 308.98 323.54 315.15 333.20
## 2019 332.39 332.73 353.65 319.17 325.72 332.45 325.11 336.06 332.01 346.53
## 2020 346.02 341.78 357.06 243.21 222.17 233.12 240.66 242.56 259.86 298.72
## 2021 304.69 322.92 355.12 307.26 314.85 310.08 306.64 319.01 318.06 344.23
## 2022 354.21 368.62 390.51 334.97 344.42 348.03 317.49 360.23              
##         Nov    Dec
## 2009 185.82 190.56
## 2010 202.49 205.63
## 2011 226.59 231.09
## 2012 251.28 247.71
## 2013 272.24 270.52
## 2014 282.62 292.03
## 2015 295.47 300.89
## 2016 309.18 312.22
## 2017 322.13 324.80
## 2018 328.79 330.41
## 2019 341.09 341.27
## 2020 296.58 339.78
## 2021 332.56 396.05
## 2022
autoplot(ivae_PN,xlab = "años",ylab = "Indice",main = "IVAE total, periodo 2009-2022 (agosto)")+theme_bw()

2. proyección a Seis meses

library(forecast)
modelo_PN<-auto.arima(y = ivae_PN)
summary(modelo_PN)
## Series: ivae_PN 
## ARIMA(1,0,2)(0,1,1)[12] with drift 
## 
## Coefficients:
##          ar1      ma1     ma2     sma1   drift
##       0.8593  -0.0056  0.1301  -0.4590  1.0190
## s.e.  0.0537   0.1012  0.0880   0.1005  0.3451
## 
## sigma^2 = 135.7:  log likelihood = -588.44
## AIC=1188.88   AICc=1189.46   BIC=1207.02
## 
## Training set error measures:
##                      ME     RMSE      MAE         MPE     MAPE      MASE
## Training set 0.07814282 11.02828 6.001135 -0.06882541 2.122511 0.2800334
##                      ACF1
## Training set 0.0004682307
pronosticos_PN<-forecast(modelo_PN,h = 6)
autoplot(pronosticos_PN)+xlab("Años")+ylab("indice")+theme_bw()

library(forecast)
autoplot(pronosticos_PN$x,series = "IVAE_PN")+autolayer(pronosticos_PN$fitted,series = "Pronóstico_PN")+ggtitle("Ajuste SARIMA")

3. Serie ampliada

ivae_h_PN<-ts(as.numeric(rbind(as.matrix(pronosticos_PN$x),as.matrix(pronosticos_PN$mean))),start = c(2009,1),frequency = 12)
print(ivae_h_PN)
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2009 195.7100 189.7100 204.6400 188.0600 193.6500 199.6000 188.2000 190.9600
## 2010 201.0100 200.4200 220.0300 203.1100 202.7300 210.7500 198.3100 206.2200
## 2011 212.3600 218.5000 228.6100 218.9300 227.1200 226.9200 210.4100 225.6900
## 2012 233.2300 237.8800 260.0500 237.8900 248.6400 251.0200 239.8600 246.4700
## 2013 253.2900 254.0400 276.6000 262.6000 268.3800 269.1600 256.2700 265.0800
## 2014 265.0900 267.3100 286.5600 275.5300 274.4500 283.3500 268.3000 278.4300
## 2015 281.4800 276.7500 307.3100 280.8500 281.0600 294.7600 279.8500 290.4000
## 2016 292.5300 289.6700 318.7900 292.1300 296.5600 306.7700 293.7600 303.3400
## 2017 305.8400 307.2700 344.0100 309.6000 316.0600 324.6800 304.9700 318.1900
## 2018 320.5700 323.9100 349.9900 311.6900 317.9400 324.9400 308.9800 323.5400
## 2019 332.3900 332.7300 353.6500 319.1700 325.7200 332.4500 325.1100 336.0600
## 2020 346.0200 341.7800 357.0600 243.2100 222.1700 233.1200 240.6600 242.5600
## 2021 304.6900 322.9200 355.1200 307.2600 314.8500 310.0800 306.6400 319.0100
## 2022 354.2100 368.6200 390.5100 334.9700 344.4200 348.0300 317.4900 360.2300
## 2023 378.0832 387.5300                                                      
##           Sep      Oct      Nov      Dec
## 2009 195.4500 204.8900 185.8200 190.5600
## 2010 205.2000 213.9100 202.4900 205.6300
## 2011 222.9200 233.7400 226.5900 231.0900
## 2012 238.3800 249.6200 251.2800 247.7100
## 2013 259.7200 280.5100 272.2400 270.5200
## 2014 272.5300 296.6600 282.6200 292.0300
## 2015 283.4000 310.5700 295.4700 300.8900
## 2016 296.9600 322.8200 309.1800 312.2200
## 2017 310.1300 335.9400 322.1300 324.8000
## 2018 315.1500 333.2000 328.7900 330.4100
## 2019 332.0100 346.5300 341.0900 341.2700
## 2020 259.8600 298.7200 296.5800 339.7800
## 2021 318.0600 344.2300 332.5600 396.0500
## 2022 354.2518 382.1740 369.9585 411.9195
## 2023

4. Descomposición de la serie temporal

library(stats)
fit_PN<-stl(ivae_h_PN,"periodic")
autoplot(fit_PN)+theme_bw()

TC_PN<-fit_PN$time.series[,2]
print(TC_PN)
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2009 192.5087 193.0163 193.5239 193.9160 194.3081 194.6914 195.0746 195.5996
## 2010 199.1107 200.4674 201.8241 203.2833 204.7425 205.9350 207.1274 207.8749
## 2011 213.2978 215.1722 217.0466 219.1441 221.2416 223.1788 225.1160 226.6504
## 2012 235.3315 237.5389 239.7462 241.7121 243.6779 245.2290 246.7800 247.8803
## 2013 254.6457 256.7705 258.8952 261.1843 263.4734 265.1840 266.8947 267.6903
## 2014 271.1299 272.4227 273.7155 275.2512 276.7869 278.3037 279.8206 280.8488
## 2015 284.3679 285.4120 286.4561 287.7144 288.9726 290.1614 291.3502 292.2439
## 2016 296.4129 297.5921 298.7713 300.1456 301.5198 302.8786 304.2373 305.5339
## 2017 312.0118 313.3715 314.7311 316.1277 317.5243 318.7224 319.9206 320.6346
## 2018 322.1077 322.4595 322.8114 323.2587 323.7061 324.2526 324.7991 325.3457
## 2019 328.5262 329.7140 330.9018 332.1891 333.4764 334.5683 335.6601 335.6847
## 2020 313.0946 304.9630 296.8315 290.7907 284.7498 281.6662 278.5826 279.4257
## 2021 303.7920 308.9272 314.0624 317.7463 321.4301 324.9156 328.4011 332.1937
## 2022 348.4307 350.7680 353.1052 355.1654 357.2256 359.9413 362.6570 365.2664
## 2023 379.6285 382.9152                                                      
##           Sep      Oct      Nov      Dec
## 2009 196.1247 196.7347 197.3448 198.2278
## 2010 208.6223 209.5796 210.5370 211.9174
## 2011 228.1848 229.7877 231.3906 233.3610
## 2012 248.9806 250.1825 251.3844 253.0150
## 2013 268.4859 268.9693 269.4527 270.2913
## 2014 281.8770 282.4371 282.9971 283.6825
## 2015 293.1376 293.8541 294.5706 295.4918
## 2016 306.8305 308.0966 309.3627 310.6873
## 2017 321.3487 321.5455 321.7424 321.9250
## 2018 325.8924 326.4128 326.9332 327.7297
## 2019 335.7094 331.8931 328.0768 320.5857
## 2020 280.2688 285.3930 290.5173 297.1546
## 2021 335.9863 339.4205 342.8547 345.6427
## 2022 367.8758 370.6679 373.4601 376.5443
## 2023

5. Cálculo de las tasas

library(dplyr)
library(zoo)
TC_PN %>% as.numeric() %>% as.data.frame()->TC_df_PN
names(TC_df_PN)<-c("TC_PN")
TC_df_PN %>% mutate(T_1_1_PN=(TC_PN/dplyr::lag(TC_PN,n=1)-1)*100,
                 T_1_12_PN=(TC_PN/dplyr::lag(TC_PN,n=12)-1)*100,
                 T_12_12_PN=(rollapply(TC_PN,12,mean,align='right',fill=NA)
                          /rollapply(dplyr::lag(TC_PN,n=12),12,mean,align='right',fill=NA)-1)*100) %>%
          #Aquí se realiza el centrado
          mutate(T_1_12C_PN=dplyr::lead(T_1_12_PN,n = 6),
                 T_12_12C_PN=dplyr::lead(T_12_12_PN,n = 12)) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_PN
print(tail(tabla_coyuntura_PN,n=12))
##             TC_PN  T_1_1_PN T_1_12_PN T_12_12_PN T_1_12C_PN T_12_12C_PN
## Mar 2022 353.1052 0.6663226 12.431558   15.60840   9.491306          NA
## Apr 2022 355.1654 0.5834482 11.776427   15.78601   9.206109          NA
## May 2022 357.2256 0.5800638 11.136313   15.59845   8.926627          NA
## Jun 2022 359.9413 0.7602140 10.779920   15.18287   8.940314          NA
## Jul 2022 362.6570 0.7544783 10.431091   14.54962   8.953782          NA
## Aug 2022 365.2664 0.7195287  9.955834   13.81077   9.164814          NA
## Sep 2022 367.8758 0.7143884  9.491306   12.97251         NA          NA
## Oct 2022 370.6679 0.7589916  9.206109   12.19158         NA          NA
## Nov 2022 373.4601 0.7532743  8.926627   11.46457         NA          NA
## Dec 2022 376.5443 0.8258407  8.940314   10.87342         NA          NA
## Jan 2023 379.6285 0.8190764  8.953782   10.41143         NA          NA
## Feb 2023 382.9152 0.8657808  9.164814   10.06035         NA          NA

6. Gráfico de las tasas (centradas)

library(dplyr)
library(forecast)
library(ggplot2)
tabla_coyuntura_PN %>% as.data.frame() %>% select(T_1_12C_PN,T_12_12C_PN) %>% ts(start = c(2009,1),frequency = 12)->tabla_coyuntura_graficos_PN
autoplot(tabla_coyuntura_graficos_PN)+theme_bw()

tabla_coyuntura_PN %>% as.data.frame() %>% select(T_1_1_PN) %>% ts(start = c(2009,1),frequency = 12) %>% autoplot()

unir_CR<-tabla_coyuntura_CR %>% as.data.frame() %>% select(T_1_12)
unir_ES<-tabla_coyuntura_ES %>% as.data.frame() %>% select(T_1_12_ES)
unir_GT<-tabla_coyuntura_GT %>% as.data.frame() %>% select(T_1_12_GT)
unir_HD<-tabla_coyuntura_HD %>% as.data.frame() %>% select(T_1_12_HD)
unir_NG<-tabla_coyuntura_NG %>% as.data.frame() %>% select(T_1_12_NG)
unir_PN<-tabla_coyuntura_PN %>% as.data.frame() %>% select(T_1_12_PN)
unir_6paises<- as.data.frame(c(unir_CR,unir_ES,unir_GT,unir_HD,unir_NG,unir_PN))
unir_6paises %>% as.data.frame() %>% ts(start = c(2009,1),frequency = 12) %>% autoplot()