# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# ***** \\ Curva de Phillips Original y Aumentada // *****
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Macroeconomía UABC MCE - Josefana Z Robles (2022)
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
library(readxl)
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2 ──
## ✔ ggplot2 3.3.6 ✔ purrr 0.3.4
## ✔ tibble 3.1.8 ✔ dplyr 1.0.9
## ✔ tidyr 1.2.0 ✔ stringr 1.4.1
## ✔ readr 2.1.2 ✔ forcats 0.5.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
library(mFilter)
## Warning: package 'mFilter' was built under R version 4.2.2
library(x12)
## Warning: package 'x12' was built under R version 4.2.2
## Loading required package: x13binary
## x12 is ready to use.
## Use the package x12GUI for a Graphical User Interface.
##
## By default the X13-ARIMA-SEATS binaries provided by the R package x13binary
##
## are used but this can be changed with x12path(validpath)
##
## ---------------
##
## Suggestions and bug-reports can be submitted at: https://github.com/statistikat/x12/issues
library(tseries)
## Warning: package 'tseries' was built under R version 4.2.2
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
# ****************
# Modelos
# ****************
# ****************
# Variables
# ****************
#Variables:
#Variables:
#
#Desocupación: Tasa mensual desde 2005/01 al 2022/09,
# datos obtenidos de https://www.inegi.org.mx/temas/empleo/# de ENOE
#IGAE: Variacion mensual 2004/12 al 2022/09, serie original se obtiene estacional (columna 2) y observada (columna 3).
#INPC: Variacion mensual 2004/12 al 2022/09, serie original de observados
##Inflacion: tasa de inflacion mensual INPC *anualizada* desde 1970/01 a 2022/10 INEGI.
# ****************
#Datos
# ****************
tasa_desocupacion <- read_excel("C:/Users/zacar/OneDrive/Documents/UABC/Semestre 1/Macroeconomia/Proyecto/R intento 1/tasa deocupacion2.xlsx",
col_types = c("text", "numeric", "numeric"))
tasa_inflacion<- read_excel("C:/Users/zacar/OneDrive/Documents/UABC/Semestre 1/Macroeconomia/Proyecto/R intento 1/tasa inflacion menusal anualizada.xls",
col_types = c("text", "numeric"))
igae_1= read_excel("C:/Users/zacar/OneDrive/Documents/UABC/Semestre 1/Macroeconomia/Proyecto/R intento 1/igae 04_12 al 2022_09 serie original valores nominales y variacion porcentual.xlsx",
col_types = c("numeric", "numeric", "numeric")) #serie del 2004/12 al 2022/09
inpc_1=read_excel("C:/Users/zacar/OneDrive/Documents/UABC/Semestre 1/Macroeconomia/Proyecto/R intento 1/inpc del 2004_12.xlsx",
col_types = c("text", "numeric"))
# ****************
#Tratamiento de datos, recortes, converción a serie de tiempo. Para *2005/01-2022/09*
# ****************
#Desocupacion
desocupacion=tasa_desocupacion[1:213, 2] #se utiliza col 2 desestacionalizada por INEGI
desocupacion=ts(desocupacion, start = c(2005,1), frequency = 12)
desocupacion
## Jan Feb Mar Apr May Jun Jul Aug
## 2005 3.636748 3.551328 3.632447 3.566393 3.677618 3.743455 3.575235 3.434879
## 2006 3.202329 3.521727 3.335858 3.382156 3.146113 3.506228 3.665236 3.616838
## 2007 3.730096 3.816646 3.800402 3.688027 3.465476 3.538403 3.486975 3.576415
## 2008 3.817041 3.680190 3.760082 3.617414 3.576200 3.611739 3.843450 3.776208
## 2009 4.672358 5.002623 4.956371 5.197652 5.597792 5.285763 5.461678 5.708941
## 2010 5.412059 5.114803 5.149166 5.457824 5.252435 5.136020 5.294027 5.015470
## 2011 5.030804 5.265520 5.110915 5.199065 5.366542 5.553979 5.206646 5.288444
## 2012 4.630735 5.291369 5.019664 4.907739 4.775153 4.817019 4.748300 4.939648
## 2013 5.164018 4.811967 4.975794 5.013497 4.968505 5.033925 4.865271 4.817481
## 2014 4.877896 4.758795 5.325668 4.906655 4.949264 4.829825 5.188102 4.842201
## 2015 4.375310 4.442441 4.281260 4.347880 4.429041 4.417487 4.474608 4.396869
## 2016 4.158072 4.274807 4.146666 3.817332 3.991154 3.920468 3.797966 3.756845
## 2017 3.536529 3.446384 3.542699 3.470851 3.544700 3.277538 3.250134 3.329668
## 2018 3.294549 3.266664 3.268807 3.385548 3.242378 3.359155 3.296531 3.272067
## 2019 3.475634 3.360087 3.621343 3.496456 3.553915 3.542238 3.531051 3.490090
## 2020 3.668145 3.564047 3.290729 4.703859 4.283270 5.453441 5.028635 4.916391
## 2021 4.556110 4.376039 4.420494 4.700399 4.096172 3.987884 4.103370 4.015317
## 2022 3.583067 3.693088 3.402882 3.079914 3.358122 3.321386 3.211127 3.262840
## Sep Oct Nov Dec
## 2005 3.340540 3.260866 3.147454 3.173348
## 2006 3.727896 3.677550 3.739528 3.790203
## 2007 3.503713 3.631281 3.553486 3.524224
## 2008 3.855958 4.023349 4.537086 4.534693
## 2009 5.986466 5.493176 5.289008 5.290232
## 2010 5.281470 5.332074 5.314643 5.508743
## 2011 5.073615 4.873744 5.067663 5.019080
## 2012 4.592294 4.909899 5.162259 4.891232
## 2013 4.970389 4.891555 4.591808 4.729750
## 2014 4.764825 4.651056 4.654514 4.133622
## 2015 4.194197 4.440961 4.070716 4.309724
## 2016 3.841845 3.581277 3.591414 3.635964
## 2017 3.340066 3.446110 3.498625 3.371032
## 2018 3.335702 3.209346 3.343405 3.594815
## 2019 3.527551 3.637977 3.530479 3.119639
## 2020 4.810009 4.629471 4.514591 4.088603
## 2021 3.935636 3.884704 3.815472 3.807964
## 2022 3.144236
plot(desocupacion, main="Tasa de desocupación menusal 2005-2022", sub="Elaboración propia con dato de INEGI (tendencia ciclo mensual)", ylab="Tasa", xlab="Tiempo", type="l",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

#inflacion modelo 1
inflacion=ts(tasa_inflacion[421:633,2],start = c(2005,1), frequency = 12)
inflacion
## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2005 4.54 4.27 4.39 4.60 4.60 4.33 4.47 3.95 3.51 3.05 2.91 3.33
## 2006 3.94 3.75 3.41 3.20 3.00 3.18 3.06 3.47 4.09 4.29 4.09 4.05
## 2007 3.98 4.11 4.21 3.99 3.95 3.98 4.14 4.03 3.79 3.74 3.93 3.76
## 2008 3.70 3.72 4.25 4.55 4.95 5.26 5.39 5.57 5.47 5.78 6.23 6.53
## 2009 6.28 6.20 6.04 6.17 5.98 5.74 5.44 5.08 4.89 4.50 3.86 3.57
## 2010 4.46 4.83 4.97 4.27 3.92 3.69 3.64 3.68 3.70 4.02 4.32 4.40
## 2011 3.78 3.57 3.04 3.36 3.25 3.28 3.55 3.42 3.14 3.20 3.48 3.82
## 2012 4.05 3.87 3.73 3.41 3.85 4.34 4.42 4.57 4.77 4.60 4.18 3.57
## 2013 3.25 3.55 4.25 4.65 4.63 4.09 3.47 3.46 3.39 3.36 3.62 3.97
## 2014 4.48 4.23 3.76 3.50 3.51 3.75 4.07 4.15 4.22 4.30 4.17 4.08
## 2015 3.07 3.00 3.14 3.06 2.88 2.87 2.74 2.59 2.52 2.48 2.21 2.13
## 2016 2.61 2.87 2.60 2.54 2.60 2.54 2.65 2.73 2.97 3.06 3.31 3.36
## 2017 4.72 4.86 5.35 5.82 6.16 6.31 6.44 6.66 6.35 6.37 6.63 6.77
## 2018 5.55 5.34 5.04 4.55 4.51 4.65 4.81 4.90 5.02 4.90 4.72 4.83
## 2019 4.37 3.94 4.00 4.41 4.28 3.95 3.78 3.16 3.00 3.02 2.97 2.83
## 2020 3.24 3.70 3.25 2.15 2.84 3.33 3.62 4.05 4.01 4.09 3.33 3.15
## 2021 3.54 3.76 4.67 6.08 5.89 5.88 5.81 5.59 6.00 6.24 7.37 7.36
## 2022 7.07 7.28 7.45 7.68 7.65 7.99 8.15 8.70 8.70
plot(inflacion, main="Tasa de inflacion menusal 2005-2022", sub="Elaboracion porpia con datos de INEGI (inflacion mensual anualizada)", ylab="Tasa", xlab="Tiempo",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

#inflacion modelo 2
infla_modelo2=ts(tasa_inflacion[420:633,2],start = c(2005,1), frequency = 12)
#inpc modelo 1
inpc=ts(inpc_1[2:214,2],start = c(2005,1), frequency = 12)
inpc
## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2005 0.00 0.33 0.45 0.36 -0.25 -0.10 0.39 0.12 0.40 0.25 0.72 0.61
## 2006 0.59 0.15 0.13 0.15 -0.45 0.09 0.27 0.51 1.01 0.44 0.52 0.58
## 2007 0.52 0.28 0.22 -0.06 -0.49 0.12 0.42 0.41 0.78 0.39 0.71 0.41
## 2008 0.46 0.30 0.72 0.23 -0.11 0.41 0.56 0.58 0.68 0.68 1.14 0.69
## 2009 0.23 0.22 0.58 0.35 -0.29 0.18 0.27 0.24 0.50 0.30 0.52 0.41
## 2010 1.09 0.58 0.71 -0.32 -0.63 -0.03 0.22 0.28 0.52 0.62 0.80 0.50
## 2011 0.49 0.38 0.19 -0.01 -0.74 0.00 0.48 0.16 0.25 0.67 1.08 0.82
## 2012 0.71 0.20 0.06 -0.31 -0.32 0.46 0.56 0.30 0.44 0.51 0.68 0.23
## 2013 0.40 0.49 0.73 0.07 -0.33 -0.06 -0.03 0.28 0.38 0.48 0.93 0.57
## 2014 0.89 0.25 0.27 -0.19 -0.32 0.17 0.28 0.36 0.44 0.55 0.81 0.49
## 2015 -0.09 0.19 0.41 -0.26 -0.50 0.17 0.15 0.21 0.37 0.51 0.55 0.41
## 2016 0.38 0.44 0.15 -0.32 -0.45 0.11 0.26 0.28 0.61 0.61 0.78 0.46
## 2017 1.70 0.58 0.61 0.12 -0.12 0.25 0.38 0.49 0.31 0.63 1.03 0.59
## 2018 0.53 0.38 0.32 -0.34 -0.16 0.39 0.54 0.58 0.42 0.52 0.85 0.70
## 2019 0.09 -0.03 0.39 0.05 -0.29 0.06 0.38 -0.02 0.26 0.54 0.81 0.56
## 2020 0.48 0.42 -0.05 -1.01 0.38 0.55 0.66 0.39 0.23 0.61 0.08 0.38
## 2021 0.86 0.63 0.83 0.33 0.20 0.53 0.59 0.19 0.62 0.84 1.14 0.36
## 2022 0.59 0.83 0.99 0.54 0.18 0.84 0.74 0.70 0.62
plot(inpc, main="Variacion menusal porcentual INPC 2005-2022", sub="Elaboración propia con datos de INEGI", ylab="", xlab="Tiempo",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

#inpc modelo 2
inpc2=ts(inpc_1[1:214,2],start = c(2005,1), frequency = 12)
# ****************
#Grafica plot para 2005-20022 desocupacion y tasa de inflacion
# ****************
plot(desocupacion, lwd=2, ylim=c(1,9),
ylab="Tasa", xlab="Tiempo")
lines(inflacion, lwd=2, col="gray")
legend("topleft", legend = c("Tasa desocupación", "Tasa inflación"), fill = c("Black", "Gray"), cex=.5)
title("Gráfica 1
Evolución de tasa mensual de desocupación e inflación
2005-2022", sub="Fuente: Elaboración propia con datos de INEGI/ENOE",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

# ****************
#Gráfica CON REZAGOS para *2005-2022*
#inflacion y desempleo
# ****************
#observamos los ciclos con decompose
decompose1=decompose(desocupacion)
plot(decompose1)

#obtenemos log y hacemos diferencias para suavizar
#desocupacion
log_deso=log(desocupacion)
plot(log_deso, main="Log Desocupación 2005-2022",xlab="", ylab="",
sub="Fuente: Elaboración propia con datos de INEGI/ENOE",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

diff1= diff(log_deso, lag = 18)
plot(diff1, main= "Desocupación con 1 rezagos 2005-2022", xlab="", ylab="",
sub="Fuente: Elaboración propia con datos de INEGI/ENOE",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

#inflacion
log_infla=log(inflacion)
plot(log_infla, main="Log inflación 2005-2022",xlab="", ylab="",
sub="Fuente: Elaboración propia con datos de INEGI/ENOE",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

diff2=diff(log_infla, lag=18)
plot(diff2, main= "Inflacion con 12 rezagos 2005-2022",xlab="", ylab="",
sub="Fuente: Elaboración propia con datos de INEGI/ENOE",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

#Graficamos ambas en 1
plot(diff1, lwd=2, ylim=c(-1.5,2),
ylab="", xlab="")
lines(diff2)
legend("topleft", cex = .75, legend = c("Tasa desocupación ENOE", "Tasa inflación"), fill = c("Black", "Gray"))
title("Gráfica 2
Comparación desocupación e inflación México 2005-2022", sub="Fuente: Elaboración propia con datos de INEGI",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

# ****************
#MODELO 1A
#Calculos para regresion y grafica simple *2005-20222* MODELO 1A
#Inflación y desocupación
# ****************
#La curva de Phillips original, con inflacion menusal anualizada (si quiero usar variacion INPC cambiar "inflacion" por "inpc")
#Para hacer la regresión es necesario unir la base de datos y volver a hacerlas serie de tiempo
datos1A= data.frame(desocupacion, inflacion)
colnames(datos1A)=c("desocupacion", "inflacion")
datos1A=ts(datos1A, start = c(2005,1), frequency = 12)
#modelo 1
modeloA= lm(inflacion~desocupacion, data=datos1A)
modeloA
##
## Call:
## lm(formula = inflacion ~ desocupacion, data = datos1A)
##
## Coefficients:
## (Intercept) desocupacion
## 5.9046 -0.3788
plot(modeloA, ask=FALSE, main= "Phillips Original")




summary(modeloA) #resultados
##
## Call:
## lm(formula = inflacion ~ desocupacion, data = datos1A)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.1524 -0.7872 -0.2214 0.5823 4.0315
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 5.9046 0.4988 11.838 < 2e-16 ***
## desocupacion -0.3788 0.1172 -3.234 0.00142 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.274 on 211 degrees of freedom
## Multiple R-squared: 0.04722, Adjusted R-squared: 0.0427
## F-statistic: 10.46 on 1 and 211 DF, p-value: 0.001418
#grafica de regresion simple
plot(desocupacion, inflacion,
ylab="Inflación", xlab="Desocupación", cex.main=.75)
abline(modeloA, lwd=2)
title("Gráfica 3
Modelo 1A. Curva de Phillips Para México
2005-2022", sub="Fuente: Elaboración propia con datos de INEGI
Inflación mensual anualizado",
cex.main=1, font.main=4,
cex.sub=0.55, font.sub=3)

# ****************
#MODELO 1B
#Calculos para regresion y grafica simple *2005-20222* sin LOG
#INPC e IGAE
# ****************
#Recortar serie, seleccionar columna 2 (variacion estacional) y pasar a serie de tiempo:
igae= ts(igae_1 [2:214,2], start = c(2004,12), frequency = 12) #se toma col 2
plot(igae, main="IGAE tasa variación mensual
2005-2022", sub="Elaboracion propia con datos de INEGI", cex.sub=0.75)

#grafica de evolucion de IGAE e inflacion
plot(igae, lwd=2,
ylab="Tasa", xlab="")
lines(inflacion) #NO confundir con una serie desestacionalizada, es solo que el IGAE si tiene valores
#negativos y por eso parece que gira alrededor de cero
legend("topleft", cex = .75, legend = c("% Variación IGAE", "Tasa inflación mensual anualizada"), fill = c("Black", "Gray"))
title("Gráfica 4
Comparacion de tasa de IGAE e inflación 2005-2022", sub="Fuente: Elaboración propia con datos INEGI",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

#Juntar base de datos para modelo
datos1B= data.frame(igae, inflacion)
colnames(datos1B)=c("igae", "inflacion")
datos1B=ts(datos1B, start = c(2005,1), frequency = 12)
#modelo 1B sin log
modelo1B= lm(inflacion~igae, data=datos1B)
modelo1B
##
## Call:
## lm(formula = inflacion ~ igae, data = datos1B)
##
## Coefficients:
## (Intercept) igae
## 4.2988 0.0104
plot(modelo1B, ask=FALSE, main= "Phillips Original IGAE-Inflación")




summary(modelo1B)#resultados
##
## Call:
## lm(formula = inflacion ~ igae, data = datos1B)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.1920 -0.9245 -0.2688 0.5392 4.3476
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.29885 0.09532 45.097 <2e-16 ***
## igae 0.01040 0.01953 0.532 0.595
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.304 on 211 degrees of freedom
## Multiple R-squared: 0.001341, Adjusted R-squared: -0.003392
## F-statistic: 0.2833 on 1 and 211 DF, p-value: 0.5951
#Grafica
plot(igae, inflacion,
ylab="INPC", xlab="IGAE")
abline(modelo1B, lwd=2)
title("Gráfica 5
Modelo 1B. Curva de Phillips
2005-2022 Inflación e IGAE", sub="Fuente: Elaboración propia con datos de INEGI
INPC mensual anualizado",
cex.main=1, font.main=4,
cex.sub=0.5, font.sub=3)

# ****************
#MODELO 2A
#Curva de Phillips Aumentada
#Desocupación e INPC
# ****************
#Se utiliza serie desestacionalizada menos tendencia de ingi en logaritmos
brecha_p=(log(tasa_desocupacion[1:213, 2]))-(log(tasa_desocupacion[1:213, 3]))
brecha_p=ts(brecha_p, start = c(2005,1), frequency = 12)
plot(brecha_p, ylab="", xlab="")
title("Gráfica 6
Brecha desocupacion
2005-2022 Inflación e IGAE", sub="Fuente: Elaboración propia con datos de INEGI
Log tasa desocupacion desestacionalizada menos tendencia calculada por INEGI",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

diff_inpc1=diff(inpc2, lag=1)
data_p=data.frame(diff_inpc1, brecha_p)
colnames(data_p)=c("diff_inpc1", "brecha_p")
data_p=ts(data_p, start = c(2005,1), frequency = 12)
modelo2A_p= lm(diff_inpc1 ~brecha_p, data=data_p)
summary(modelo2A_p)
##
## Call:
## lm(formula = diff_inpc1 ~ brecha_p, data = data_p)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.12900 -0.25354 0.03485 0.25460 1.32779
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.00138 0.02574 0.054 0.957
## brecha_p -0.36945 0.79339 -0.466 0.642
##
## Residual standard error: 0.3753 on 211 degrees of freedom
## Multiple R-squared: 0.001027, Adjusted R-squared: -0.003708
## F-statistic: 0.2168 on 1 and 211 DF, p-value: 0.6419
plot(brecha_p, diff_inpc1,
ylab="INPC", xlab="Desocupación")
abline(modelo2A_p)
title("Gráfica 7
Modelo 2A. Curva de Phillips
2005-2022 Inflación y desocupación", sub="Fuente: Elaboración propia con datos de INEGI
inflación con 1 rezago",
cex.main=1, font.main=4,
cex.sub=0.5, font.sub=3)

# ****************
#MODELO 2B Curva de Phillips aumentada Con Producto
#Preparacion de datos
# ****************
#Para realizar esta serie se utilizan datos originales (sin variacion, estacionalizados)
#X12-ARIMA se utiliza para eliminar el componente estacional de la inflación.
#La medida de la brecha de producto se calcula de la siguiente manera: En primer lugar, el componente estacional se
#elimina de la primera diferencia del logaritmo del IGAE mediante el procedimiento X12-ARIMA. En segundo lugar, se
#construye una medida del logaritmo del IGAE sin el componente estacional. En tercer lugar, la brecha de producto se define
#como la diferencia entre esta medida y su tendencia HP (Hodrick y Prescott, 1997).
#brecha=arima-HP
#MODELO 2b
#Valor original
igae_1= ts(igae_1 [2:214,1], start = c(2004,12), frequency = 12) #se toma col 1 val observados
plot(igae_1, main="IGAE serie observada 2004/12-2022/09", sub="Elaboracion propia con datos de INEGI", cex.sub=0.5)

log_igae=log(igae_1)
plot(log_igae)
title("Gráfica ?
Evolución log de tasa de IGAE
2005-2010", sub="Fuente: Elaboración propia con datos de INEGI",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

# ****************
#x-12 arima para desestacionalizar datos
# ****************
igae_x12=x12(log_igae)
summary(igae_x12) #modelo ARIMA: (3 0 1)(0 1 1)
##
## Time Series
##
## Frequency: 12
## Span: 12th month,2004 to 8th month,2022
##
## Model Definition
##
## ARIMA Model: (3 0 1)(0 1 1) (Automatic Model Choice)
## Model Span:
## Transformation: Automatic selection : No transformation
## Regression Model: Constant
##
## Outlier Detection
##
## No outlier detection performed
##
## Regression Model
## variable coef stderr tval
## 1 Constant 0.016 0.003 6.332
##
## Seasonal Adjustment
##
## Identifiable Seasonality: yes
## Seasonal Peaks: none
## Trading Day Peaks: rsd sa irr
## Overall Index of Quality of SA
## (Acceptance Region from 0 to 1)
## Q: 0.49
## Number of M statistics outside the limits: 0
##
## SA decomposition: additive
## Moving average used to estimate the seasonal factors: 3x5
## Moving average used to estimate the final trend-cycle: 13-term Henderson filter
plot(igae_x12, sa=TRUE , trend=FALSE, original=TRUE, main="Gráfica ?
IGAE serie original y desestacionalizada por arima X-12", sub="Elaboración Propia con datos de INEGI", cex.sub=0.5,
xlab="Tiempo", ylab="Valor",
lwd_original=1, lwd_sa=2, col_sa="gray")

#d11 is final seasonally adjusted data, buscar definiciones en x12work
#volviendo a graficar para blanco y negro y ajustes linea y subtitulos
ajustadaigae=igae_x12@d11
plot(ajustadaigae, lwd=3, xlab="", ylab="", col="black")
lines(log_igae, lwd=2, type="l", col="gray")
legend("topleft", cex = .6, legend = c("IGAE desestacionalizado", "IGAE observado"), fill = c("Black", "Gray"))
title("Gráfica 8
Desestacionalizacion IGAE con ARIMA X-12
2005-2022", sub="Fuente: Elaboración propia con datos INEGI
log modelo ARIMA: (3 0 1)(0 1 1)",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

adf.test(ajustadaigae, alternative="stationary")
##
## Augmented Dickey-Fuller Test
##
## data: ajustadaigae
## Dickey-Fuller = -2.5437, Lag order = 5, p-value = 0.348
## alternative hypothesis: stationary
# ****************
#Tendencia Hodrick y Prescott
# ****************
lambda_hp=1600
hp_igae= hpfilter(log_igae, type="lambda", freq=lambda_hp)
plot(hp_igae, ask= FALSE, col="black")
title( sub="Fuente: Elaboración propia con dato de INEGI",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

trend.hp_igae=hp_igae[["trend"]]
plot(trend.hp_igae, xlab="", ylab="")
title( "Gráfica ?
IGAE Filtro Hodrick y Prescott
2005-2022", sub="Fuente: Elaboración propia con dato de INEGI",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

#graficar juntos tendecia x-12 y HP
plot(ajustadaigae, xlab="", ylab="", lwd=2)
lines(trend.hp_igae, lwd=2, col="blue")
lines(log_igae, type="h", col="gray")
legend("topleft", cex = .6, legend = c("IGAE desestacionalizado", "IGAE filtro HP", "IGAE observado"), fill = c("Black", "blue", "gray"))
title("Gráfica 8
Evolución del producto desestacionalizado y filtro HP
2005-2022", sub="Fuente: Elaboración propia con datos INEGI
Desestacionalizado por método X12 ARIMA
Tendencia Hodrick y Prescott (lambda 1600)",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

# ****************
#Brecha del Producto
# ****************
#La brecha del producto es la serie desestacionalizada por arima x-12 menos la tendencia
#Hodrick y Prescott, es decir arima-hp= brecha del producto
brecha2B= ajustadaigae- trend.hp_igae
summary(brecha2B)
## trend.hp_igae
## Min. :-0.1858984
## 1st Qu.:-0.0061043
## Median : 0.0019400
## Mean : 0.0004039
## 3rd Qu.: 0.0096349
## Max. : 0.0556421
brecha2B
## Jan Feb Mar Apr May
## 2004
## 2005 1.343295e-02 -8.834221e-03 4.336801e-02 1.792289e-04 -6.597268e-03
## 2006 3.017865e-03 1.038565e-02 1.743921e-03 1.430762e-02 5.091063e-03
## 2007 -7.007567e-03 -1.143631e-03 -2.457644e-03 3.953186e-03 2.948162e-03
## 2008 2.428514e-02 -3.497368e-02 5.420805e-02 1.621854e-02 1.762949e-02
## 2009 -3.146907e-02 -3.422100e-02 -3.358034e-02 -4.889105e-02 -2.424090e-02
## 2010 1.055599e-03 1.285043e-02 2.207836e-02 1.903439e-03 8.537496e-03
## 2011 -3.477233e-03 8.886534e-03 -8.818516e-03 -2.527992e-03 2.972145e-03
## 2012 1.610022e-02 5.938960e-03 -3.872202e-03 5.428725e-03 4.128889e-03
## 2013 -3.278503e-03 -3.252302e-02 1.968846e-02 4.497812e-03 -1.539319e-02
## 2014 -1.567850e-03 -6.030037e-03 8.626908e-04 7.173096e-03 -6.097749e-03
## 2015 -2.130714e-03 1.939968e-03 3.180835e-03 -8.690568e-03 5.441798e-03
## 2016 1.554054e-02 -1.468780e-02 1.185797e-02 -6.905395e-03 3.727816e-03
## 2017 -3.997458e-03 1.795202e-02 -1.967982e-02 8.736734e-04 8.954724e-03
## 2018 -1.511384e-03 -1.068136e-02 1.382685e-02 1.478676e-02 1.006619e-02
## 2019 1.023074e-02 2.408834e-03 8.363173e-03 2.326897e-02 1.700207e-02
## 2020 5.564210e-02 2.500343e-02 -1.609417e-01 -1.858984e-01 -7.571962e-02
## 2021 4.981304e-03 3.533202e-02 3.175923e-02 2.556697e-02 3.171514e-02
## 2022 2.530615e-04 6.302841e-03 1.618455e-02 2.187382e-02 1.538976e-02
## Jun Jul Aug Sep Oct
## 2004
## 2005 -1.379610e-02 8.429470e-04 5.990124e-04 -2.613867e-02 1.950762e-03
## 2006 -5.998949e-03 3.477863e-03 -3.256613e-03 -1.199921e-02 -8.600860e-03
## 2007 4.444107e-04 5.020056e-03 -6.522304e-03 9.634903e-03 1.727428e-03
## 2008 3.494574e-02 1.006790e-02 2.023041e-02 3.099077e-02 -9.324306e-05
## 2009 -3.961196e-03 -2.413689e-02 -8.528736e-03 -2.089618e-03 -5.986819e-03
## 2010 6.229656e-03 4.542006e-04 5.943710e-03 -7.695957e-03 2.662844e-03
## 2011 -6.671693e-03 1.052318e-02 5.268071e-03 -1.178428e-02 1.074135e-02
## 2012 2.298839e-03 5.808190e-03 -9.492471e-03 4.025029e-03 1.669609e-02
## 2013 -1.836018e-03 9.915021e-05 -9.169698e-03 2.834977e-03 -2.535834e-03
## 2014 7.662586e-03 -1.039674e-02 -1.342871e-03 6.552128e-03 -7.522020e-03
## 2015 1.252147e-02 -4.215106e-03 1.919662e-02 1.691307e-03 -1.270947e-02
## 2016 -8.826583e-03 1.181829e-03 4.801930e-03 -1.070377e-02 5.435043e-03
## 2017 -1.523868e-02 1.921135e-03 -1.583130e-02 -1.332022e-02 -2.944902e-03
## 2018 5.237314e-03 9.788419e-03 -5.520182e-03 3.522610e-03 -1.872711e-04
## 2019 3.156727e-02 2.558589e-02 2.283063e-02 3.009888e-02 2.206975e-02
## 2020 -2.650957e-02 -2.739357e-02 8.386386e-03 9.314657e-03 4.450721e-03
## 2021 1.794842e-02 -8.848351e-03 -1.159693e-02 -2.770258e-02 -1.178166e-02
## 2022 2.493477e-03 1.550890e-02 6.180930e-03
## Nov Dec
## 2004 3.990147e-03
## 2005 5.054459e-03 1.093176e-02
## 2006 -1.331773e-02 -9.783606e-04
## 2007 -1.217304e-02 1.570436e-02
## 2008 3.382022e-03 -2.426287e-02
## 2009 4.431318e-03 -1.758628e-03
## 2010 5.935053e-03 -4.329882e-03
## 2011 -6.452166e-04 2.094467e-03
## 2012 -7.081267e-03 1.030776e-02
## 2013 -4.039772e-03 -4.081756e-03
## 2014 6.180599e-03 9.045025e-04
## 2015 -6.051418e-04 -9.915059e-03
## 2016 3.487301e-03 -2.922227e-04
## 2017 -6.104286e-03 -1.358454e-03
## 2018 -2.090967e-02 9.476110e-03
## 2019 1.869499e-02 5.066988e-02
## 2020 1.555258e-02 2.593239e-03
## 2021 -2.612502e-03 -9.920282e-03
## 2022
#gráfica del la brecha del producto
plot(brecha2B, xlab="", ylab="", lwd=2)
title("Gráfica 9
Brecha del producto calculada
2005-2022", sub="Fuente: Elaboración propia con datos INEGI
Desestacionalizado por método x12 ARIMA
Tendencia Hodrick y Prescott (lambda 1600)",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

# ****************
#Gráfica de inflacion y Brecha del Producto
# ****************
#INPC modelo 2 (con 1 diff)
infla_2=ts(inpc2,start = c(2005,1), frequency = 12)
diffinfla_2=diff(infla_2, lag=1)
plot(diffinfla_2, xlab="", ylab="", lwd=1)
lines(brecha2B)
title("Gráfica ?
2005-2022", sub="Fuente: Elaboración propia con datos INEGI",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

plot(diffinfla_2, brecha2B)

datos2B=data.frame(diffinfla_2, brecha2B)
colnames(datos2B)=c("diffinfla_2", "brecha2B")
datos2B=ts(datos2B, start = c(2005,1), frequency = 12)
plot(datos2B)

#modelo 1
modelo2B= lm(diffinfla_2 ~brecha2B, data=datos2B)
modelo2B
##
## Call:
## lm(formula = diffinfla_2 ~ brecha2B, data = datos2B)
##
## Coefficients:
## (Intercept) brecha2B
## 0.002564 -1.581096
#plot(modelo2, ask=FALSE, main= " Phillips Aumentada")
summary(modelo2B) #resultados
##
## Call:
## lm(formula = diffinfla_2 ~ brecha2B, data = datos2B)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.21703 -0.25630 0.03638 0.24554 1.23697
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.002564 0.025606 0.10 0.920
## brecha2B -1.581096 1.098105 -1.44 0.151
##
## Residual standard error: 0.3737 on 211 degrees of freedom
## Multiple R-squared: 0.00973, Adjusted R-squared: 0.005036
## F-statistic: 2.073 on 1 and 211 DF, p-value: 0.1514
#grafica de regresion simple
plot(brecha2B, diffinfla_2,
ylab="Inflación", xlab="Producto")
abline(modelo2B)
title("Gráfica 10
Modelo 2B. Curva de Phillips Aumentada Inflación
y Producto 2005-2022", sub="Fuente: Elaboración propia con datos de INEGI",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

par(mfrow=c(1,2))
plot(brecha2B, diffinfla_2,
ylab="Inflación", xlab="Producto")
abline(modelo2B)
title("Gráfica 10
Modelo 2B. Curva de Phillips Aumentada Inflación
y Producto 2005-2022", sub="Fuente: Elaboración propia con datos de INEGI",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)
#######
#Grafica analsis de resultados
#####
par(mfrow=c(1,2))
#desemoleo e inflación
plot(desocupacion, inflacion,
ylab="Inflación", xlab="Desocupación", cex.main=.75)
abline(modeloA, lwd=2)
title("
Modelo 1A.
Desocupación e Inflación 2005-2022", sub="Curva de Phillips Original",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)
plot(brecha_p, diff_inpc1,
ylab="Inflación", xlab="Desocupación")
abline(modelo2A_p)
title("
Modelo 2A.
Desocupación e inflación 2005-2022 ", sub="Curva de Phillips Aumentada",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)

#IGAE E INFLACIÓN
#modelo 1B
plot(igae, inflacion,
ylab="Inflación", xlab="IGAE")
abline(modelo1B, lwd=2)
title("
Modelo 1B.
Inflación y Producto 2005-2022 ", sub="Curva de Phillips Original" ,
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)
#modelo 2B
plot(brecha2B, diffinfla_2,
ylab="Inflación", xlab="IGAE")
abline(modelo2B)
title("
Modelo 2B.
Inflación y Producto 2005-2022", sub="Curva de Phillips Aumentada",
cex.main=1, font.main=4,
cex.sub=0.75, font.sub=3)
