Tiene una periodicidad mensual, la unidad de medida es el número de pasajeros (en miles), los datos considerados van desde enero de 2006 hasta julio de 2018.
Los datos fueron tomados del banco de información del INEGI y la fuente es: SCT. Aeropuertos y Servicios Auxiliares (ASA).
El primer paso para el análisis de esta serie de tiempo es leer y graficar la base de datos
library(forecast)
library(fpp2)## Loading required package: ggplot2
## Loading required package: fma
## Loading required package: expsmooth
library(ggplot2)
library(TSA)##
## Attaching package: 'TSA'
## The following objects are masked from 'package:stats':
##
## acf, arima
## The following object is masked from 'package:utils':
##
## tar
library(gridExtra)
base<-read.csv('C:/Users/lugub/Documents/econometria/tareas1,2,4/base2.csv')
colnames(base)<-c("fecha","pasajeros")
#View(base)
pasajeros=base$pasajeros
#View(npsgr)
psgrt<-ts(base$pasajeros,frequency = 12,start=c(2006,12))
plot(psgrt,col="orange",main="Llegada de pasajeros internacionales",ylab="Número de pasajeros en miles",xlab="Date")De esta serie se observa que presenta un patrón de tendencia con una pendiente positiva ya que se observa un incremento de largo plazo en los datos. También presenta estacionalidad, esto tiene sentido ya que la mayor afluencia de visitantes extranjeros que llegan al país es durante las vacaciones.
MM1<-autoplot(psgrt,series="pasajeros")+autolayer(ma(psgrt,3,centre=FALSE),series="3-MA")+xlab("Date")+ylab("Número de pasajeros")+ggtitle("Llegada pasajeros internacionales")
MM2<-autoplot(psgrt,series="pasajeros")+autolayer(ma(psgrt,5,centre=FALSE),series="5-MA")+xlab("Date")+ylab("Número de pasajeros")+ggtitle("Llegada pasajeros internacionales")
MM3<-autoplot(psgrt,series="pasajeros")+autolayer(ma(psgrt,7,centre=FALSE),series="7-MA")+xlab("Date")+ylab("Número de pasajeros")+ggtitle("Llegada pasajeros internacionales")
MM4<-autoplot(psgrt,series="pasajeros")+autolayer(ma(psgrt,9,centre=FALSE),series="9-MA")+xlab("Date")+ylab("Número de pasajeros")+ggtitle("Llegada pasajeros internacionales")
grid.arrange(MM1,MM2,MM3,MM4)## Warning: Removed 2 rows containing missing values (geom_path).
## Warning: Removed 4 rows containing missing values (geom_path).
## Warning: Removed 6 rows containing missing values (geom_path).
## Warning: Removed 8 rows containing missing values (geom_path).
Dado que no es una serie económica el modelo aditivo es el más apropiado.
fit<-decompose(psgrt,type="additive")
autoplot(fit)Del gráfico anterior existe evidencia de estacionalidad.
El gráfico de la serie original y serie desestacionalizada es el siguiente:
autoplot(psgrt,series="base")+autolayer(seasadj(fit),series="Seasonally adj. data")+xlab("Date")+ylab("Número de pasajeros")+ggtitle("Llegada de pasajeros internacionales")mes.<-season(psgrt)
modelo1<-lm(pasajeros~mes.)
summary(modelo1)##
## Call:
## lm(formula = pasajeros ~ mes.)
##
## Residuals:
## Min 1Q Median 3Q Max
## -781.53 -253.87 -60.89 275.63 814.66
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1443.12 121.28 11.900 <2e-16 ***
## mes.February -38.70 171.51 -0.226 0.8219
## mes.March 62.19 171.51 0.363 0.7176
## mes.April -138.36 171.51 -0.807 0.4217
## mes.May -134.86 171.51 -0.786 0.4335
## mes.June -3.62 171.51 -0.021 0.9832
## mes.July 54.30 171.51 0.317 0.7522
## mes.August -266.89 176.21 -1.515 0.1329
## mes.September -422.75 176.21 -2.399 0.0182 *
## mes.October -250.88 176.21 -1.424 0.1575
## mes.November -36.85 176.21 -0.209 0.8348
## mes.December 101.70 171.51 0.593 0.5545
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 383.5 on 104 degrees of freedom
## Multiple R-squared: 0.1436, Adjusted R-squared: 0.05305
## F-statistic: 1.586 on 11 and 104 DF, p-value: 0.1137
autoplot(psgrt)+geom_smooth(method="lm",se=FALSE)mes2.<-season(psgrt)
modelo2<-lm(psgrt~time(psgrt)+mes2.)
summary(modelo2)##
## Call:
## lm(formula = psgrt ~ time(psgrt) + mes2.)
##
## Residuals:
## Min 1Q Median 3Q Max
## -603.53 -81.03 -13.02 92.36 292.63
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -2.373e+05 1.070e+04 -22.174 < 2e-16 ***
## time(psgrt) 1.187e+02 5.319e+00 22.310 < 2e-16 ***
## mes2.February -4.859e+01 7.136e+01 -0.681 0.497516
## mes2.March 4.241e+01 7.137e+01 0.594 0.553626
## mes2.April -1.680e+02 7.138e+01 -2.354 0.020463 *
## mes2.May -1.744e+02 7.139e+01 -2.443 0.016256 *
## mes2.June -5.306e+01 7.140e+01 -0.743 0.459038
## mes2.July -5.029e+00 7.141e+01 -0.070 0.943994
## mes2.August -2.768e+02 7.332e+01 -3.775 0.000268 ***
## mes2.September -4.425e+02 7.332e+01 -6.035 2.53e-08 ***
## mes2.October -2.805e+02 7.333e+01 -3.826 0.000224 ***
## mes2.November -7.640e+01 7.334e+01 -1.042 0.299954
## mes2.December 1.116e+02 7.136e+01 1.564 0.120968
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 159.6 on 103 degrees of freedom
## Multiple R-squared: 0.8532, Adjusted R-squared: 0.8361
## F-statistic: 49.87 on 12 and 103 DF, p-value: < 2.2e-16
autoplot(psgrt)+geom_smooth(method = "lm", se=FALSE)mes3.<-season(psgrt)
modelo3<-lm(psgrt~time(psgrt)+I(time(psgrt)^2)+mes3.)
summary(modelo3)##
## Call:
## lm(formula = psgrt ~ time(psgrt) + I(time(psgrt)^2) + mes3.)
##
## Residuals:
## Min 1Q Median 3Q Max
## -530.87 -71.20 12.19 91.82 276.71
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.777e+07 7.289e+06 6.553 2.33e-09 ***
## time(psgrt) -4.761e+04 7.247e+03 -6.570 2.16e-09 ***
## I(time(psgrt)^2) 1.186e+01 1.801e+00 6.586 2.00e-09 ***
## mes3.February -4.826e+01 6.007e+01 -0.803 0.42364
## mes3.March 4.291e+01 6.007e+01 0.714 0.47670
## mes3.April -1.675e+02 6.008e+01 -2.789 0.00632 **
## mes3.May -1.741e+02 6.009e+01 -2.897 0.00461 **
## mes3.June -5.306e+01 6.010e+01 -0.883 0.37933
## mes3.July -5.523e+00 6.011e+01 -0.092 0.92697
## mes3.August -2.577e+02 6.178e+01 -4.171 6.39e-05 ***
## mes3.September -4.233e+02 6.179e+01 -6.850 5.70e-10 ***
## mes3.October -2.613e+02 6.179e+01 -4.228 5.15e-05 ***
## mes3.November -5.729e+01 6.180e+01 -0.927 0.35610
## mes3.December 1.111e+02 6.007e+01 1.849 0.06729 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 134.3 on 102 degrees of freedom
## Multiple R-squared: 0.897, Adjusted R-squared: 0.8838
## F-statistic: 68.31 on 13 and 102 DF, p-value: < 2.2e-16
autoplot(psgrt)+geom_smooth()## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
plot(y=rstandard(modelo2),x=as.vector(time(psgrt)),xlab='Tiempo',ylab='Residuales estandarizados',type='o')hist(rstandard(modelo2),xlab='Residuales estandarizados')qqnorm(rstandard(modelo2));qqline(rstandard(modelo2),col='red')ggAcf(rstandard(modelo2))shapiro.test(rstandard(modelo2))##
## Shapiro-Wilk normality test
##
## data: rstandard(modelo2)
## W = 0.96293, p-value = 0.002716