Importación de datos

library(ggplot2)
library(forecast)
library(readxl)
AGSP_ts <- read_excel("C:/Users/corte/Desktop/Agricultura, ganaderia, silvicultura y pesca.xlsx",
 col_types = c("skip", "skip", "numeric"))
data=AGSP_ts%>%ts(start = c(2005,1),frequency = 12)->AGSP
print(AGSP)
##         Jan    Feb    Mar    Apr    May    Jun    Jul    Aug    Sep    Oct
## 2005  92.64  68.41  60.10  65.43 137.50 141.97  71.05 128.73  97.27  71.26
## 2006  86.67  69.31  62.80  65.16 136.68 143.43  70.70 137.40 107.81  74.25
## 2007  94.30  73.70  65.83  69.07 146.57 156.23  72.82 153.89 117.05  76.11
## 2008  91.09  70.96  64.06  67.95 150.52 165.58  75.11 154.51 114.93  74.25
## 2009  86.82  70.17  65.24  67.36 137.69 153.16  75.56 136.56 109.59  74.07
## 2010  97.58  82.25  68.26  68.26 153.40 149.50  75.17 147.21 103.37  74.22
## 2011  92.58  68.70  68.64  68.33 145.21 149.11  69.83 131.08 101.34  75.92
## 2012  88.55  62.62  61.39  65.20 149.91 183.43  71.85 146.35 116.73  73.90
## 2013  90.05  66.16  62.83  63.18 124.26 164.76  68.33 125.32 117.47  72.17
## 2014  97.83  75.14  61.11  67.20 122.92 154.11  74.61 124.65 118.20  74.18
## 2015  91.59  67.18  66.22  69.67 112.99 142.87  73.00 116.07 112.53  71.90
## 2016  82.95  70.20  66.91  66.61 118.81 168.59  74.25 132.16 126.73  75.35
## 2017  87.09  64.26  70.53  63.94 125.82 178.89  76.25 125.83 121.14  73.12
## 2018  94.24  71.82  71.19  68.57 127.30 164.72  71.66 126.25 116.33  71.38
## 2019  92.86  72.60  70.75  68.58 128.30 168.88  75.16 130.35              
##         Nov    Dec
## 2005 115.84 123.22
## 2006 124.54 127.28
## 2007 131.05 135.13
## 2008 127.42 132.96
## 2009 122.34 122.11
## 2010 125.23 137.40
## 2011 126.99 130.58
## 2012 131.53 130.47
## 2013 124.56 110.55
## 2014 124.93 105.12
## 2015 112.19  97.74
## 2016 123.86 104.69
## 2017 119.79 106.43
## 2018 121.10 108.96
## 2019
autoplot(AGSP,xlab = "aƱos",ylab = "Indice",main = "Agricultura, ganaderƭa, silvicultura y pesca total, periodo 2005-2019 (agosto)")+theme_bw()

2. Proyección a 6 meses

library(forecast)
modelo<-auto.arima(y= AGSP)
summary(modelo)
## Series: AGSP 
## ARIMA(3,0,2)(0,1,2)[12] 
## 
## Coefficients:
##          ar1      ar2     ar3     ma1     ma2     sma1     sma2
##       0.0965  -0.5711  0.4537  0.2132  0.7138  -0.2316  -0.1690
## s.e.  0.1355   0.1735  0.0780  0.1591  0.1968   0.0945   0.0665
## 
## sigma^2 estimated as 47.77:  log likelihood=-547.45
## AIC=1110.91   AICc=1111.84   BIC=1135.71
## 
## Training set error measures:
##                     ME     RMSE      MAE         MPE     MAPE      MASE
## Training set 0.2114352 6.527879 4.453522 0.007816642 4.269373 0.7750268
##                     ACF1
## Training set -0.02784543
pronosticos<-forecast(modelo,h = 6)
autoplot(pronosticos)+xlab("AƱos")+ylab("indice")+theme_bw()

library(forecast)
autoplot(pronosticos$x,series = "AGSP")+autolayer(pronosticos$fitted,series = "Pronóstico")+ggtitle("Ajustes ARIMA")

##3. Serie Ampliada

AGSP_h<-ts(as.numeric(rbind(as.matrix(pronosticos$x),as.matrix(pronosticos$mean))),start = c(2005,1),frequency = 12)
print(AGSP_h)
##            Jan       Feb       Mar       Apr       May       Jun       Jul
## 2005  92.64000  68.41000  60.10000  65.43000 137.50000 141.97000  71.05000
## 2006  86.67000  69.31000  62.80000  65.16000 136.68000 143.43000  70.70000
## 2007  94.30000  73.70000  65.83000  69.07000 146.57000 156.23000  72.82000
## 2008  91.09000  70.96000  64.06000  67.95000 150.52000 165.58000  75.11000
## 2009  86.82000  70.17000  65.24000  67.36000 137.69000 153.16000  75.56000
## 2010  97.58000  82.25000  68.26000  68.26000 153.40000 149.50000  75.17000
## 2011  92.58000  68.70000  68.64000  68.33000 145.21000 149.11000  69.83000
## 2012  88.55000  62.62000  61.39000  65.20000 149.91000 183.43000  71.85000
## 2013  90.05000  66.16000  62.83000  63.18000 124.26000 164.76000  68.33000
## 2014  97.83000  75.14000  61.11000  67.20000 122.92000 154.11000  74.61000
## 2015  91.59000  67.18000  66.22000  69.67000 112.99000 142.87000  73.00000
## 2016  82.95000  70.20000  66.91000  66.61000 118.81000 168.59000  74.25000
## 2017  87.09000  64.26000  70.53000  63.94000 125.82000 178.89000  76.25000
## 2018  94.24000  71.82000  71.19000  68.57000 127.30000 164.72000  71.66000
## 2019  92.86000  72.60000  70.75000  68.58000 128.30000 168.88000  75.16000
## 2020  92.14539  71.36930                                                  
##            Aug       Sep       Oct       Nov       Dec
## 2005 128.73000  97.27000  71.26000 115.84000 123.22000
## 2006 137.40000 107.81000  74.25000 124.54000 127.28000
## 2007 153.89000 117.05000  76.11000 131.05000 135.13000
## 2008 154.51000 114.93000  74.25000 127.42000 132.96000
## 2009 136.56000 109.59000  74.07000 122.34000 122.11000
## 2010 147.21000 103.37000  74.22000 125.23000 137.40000
## 2011 131.08000 101.34000  75.92000 126.99000 130.58000
## 2012 146.35000 116.73000  73.90000 131.53000 130.47000
## 2013 125.32000 117.47000  72.17000 124.56000 110.55000
## 2014 124.65000 118.20000  74.18000 124.93000 105.12000
## 2015 116.07000 112.53000  71.90000 112.19000  97.74000
## 2016 132.16000 126.73000  75.35000 123.86000 104.69000
## 2017 125.83000 121.14000  73.12000 119.79000 106.43000
## 2018 126.25000 116.33000  71.38000 121.10000 108.96000
## 2019 130.35000 119.66077  73.50794 121.96594 108.45628
## 2020

4. Descompisición de la serie temporal

library(stats)
fit<-stl(AGSP_h,"periodic")
autoplot(fit)+theme_bw()

TC<-fit$time.series[,2]
print(TC)
##            Jan       Feb       Mar       Apr       May       Jun       Jul
## 2005  99.31823  98.97319  98.62815  98.37010  98.11206  97.92727  97.74249
## 2006  98.05934  98.43933  98.81931  99.23012  99.64094 100.07666 100.51238
## 2007 104.27907 104.96795 105.65683 106.17434 106.69184 107.01413 107.33643
## 2008 107.69422 107.78760 107.88098 107.82439 107.76779 107.70003 107.63227
## 2009 104.79511 104.12703 103.45896 103.00800 102.55705 102.50579 102.45453
## 2010 105.32045 105.53317 105.74590 105.80154 105.85718 105.83634 105.81551
## 2011 104.40025 103.89908 103.39790 102.94133 102.48475 102.13596 101.78716
## 2012 103.45441 104.54204 105.62967 106.21380 106.79793 107.14337 107.48880
## 2013 103.35508 102.47530 101.59553 100.99342 100.39131 100.12850  99.86569
## 2014 100.42488 100.33214 100.23940 100.15475 100.07009  99.83078  99.59147
## 2015  97.98196  97.29144  96.60091  95.99319  95.38547  94.78547  94.18547
## 2016  96.17314  97.15074  98.12834  99.13780 100.14727 100.71282 101.27836
## 2017 101.52714 101.50601 101.48488 101.51964 101.55440 101.73492 101.91544
## 2018 101.64461 101.45489 101.26516 101.21669 101.16822 101.08938 101.01054
## 2019 101.56572 101.92965 102.29359 102.54130 102.78902 102.54327 102.29751
## 2020 100.90378 100.58453                                                  
##            Aug       Sep       Oct       Nov       Dec
## 2005  97.58665  97.43082  97.48009  97.52935  97.79435
## 2006 101.02280 101.53322 102.18125 102.82928 103.55417
## 2007 107.37626 107.41609 107.43344 107.45079 107.57251
## 2008 107.49096 107.34964 106.84811 106.34659 105.57085
## 2009 102.89013 103.32573 103.89580 104.46586 104.89316
## 2010 105.59466 105.37381 105.17946 104.98512 104.69268
## 2011 101.47414 101.16111 101.31405 101.46700 102.46070
## 2012 107.51317 107.53754 106.69779 105.85803 104.60655
## 2013 100.09565 100.32560 100.47819 100.63077 100.52783
## 2014  99.42895  99.26644  99.12448  98.98252  98.48224
## 2015  93.96094  93.73641  94.09920  94.46199  95.31757
## 2016 101.31370 101.34904 101.32645 101.30385 101.41550
## 2017 102.09354 102.27164 102.21950 102.16737 101.90599
## 2018 100.91503 100.81953 100.89751 100.97550 101.27061
## 2019 102.10919 101.92086 101.69698 101.47309 101.18844
## 2020

5. Calculo de las tasas

library(dplyr)
library(zoo)
TC %>% as.numeric() %>% as.data.frame()->TC_df
names(TC_df)<-c("TC")
TC_df %>% mutate(T_1_1=(TC/dplyr::lag(TC,n=1)-1)*100,
                 T_1_12=(TC/dplyr::lag(TC,n=12)-1)*100,
                 T_12_12=(rollapply(TC,12,mean,align='right',fill=NA)
                          /rollapply(dplyr::lag(TC,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(2005,1),frequency = 12)->tabla_coyuntura
print(tail(tabla_coyuntura,n=12))
##                TC      T_1_1      T_1_12     T_12_12     T_1_12C T_12_12C
## Mar 2019 102.2936  0.3570470  1.01558325 -0.53981122  1.09238238       NA
## Apr 2019 102.5413  0.2421618  1.30869229 -0.40669621  0.79235201       NA
## May 2019 102.7890  0.2415768  1.60208218 -0.24246155  0.49278507       NA
## Jun 2019 102.5433 -0.2390864  1.43821920 -0.07056378 -0.08113996       NA
## Jul 2019 102.2975 -0.2396594  1.27410041  0.10911897 -0.65172979       NA
## Aug 2019 102.1092 -0.1840959  1.18332739  0.30397193 -1.31965625       NA
## Sep 2019 101.9209 -0.1844354  1.09238238  0.51417062          NA       NA
## Oct 2019 101.6970 -0.2196659  0.79235201  0.68925526          NA       NA
## Nov 2019 101.4731 -0.2201495  0.49278507  0.82905490          NA       NA
## Dec 2019 101.1884 -0.2805220 -0.08113996  0.87506855          NA       NA
## Jan 2020 100.9038 -0.2813111 -0.65172979  0.82708563          NA       NA
## Feb 2020 100.5845 -0.3163907 -1.31965625  0.67686912          NA       NA

6.Grafico de las Tasas (Centradas)

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

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