Justo de Jorge Moreno
2012-Jan-02 09:50 UTC
[R-es] Duda sobre variables de impulso y escalón en series
Hola y feliz año,
Estoy trabajando por primera vez (igual ando muy pérdido) con el paquete
forecast (modelos ARIMA)(Hyndman y Khandakar 2008) y utilizo series
mensuales de compañías aéreas. Estoy intentando analizar el impacto de
algunos de los acontecimientos que han podido influir en la variable
ingresos por viajero transportado (p.e el atentado del 11 de septiembre,
crisis de la ceniza abril-mayo 2010, crisis). He probado con diferentes
modelos pero no acabo de ver el impacto. Lo que hago es:
1) Estimar el modelo ARIMA
2) Contruir una/s variables de impulso (también escalón)
3) Comparar modelos
He probado diferentes variantes. Parece que el modelo 4 (al final) mejora
los resultados.(Parece que los modelos ARIMA con variables exógenas
funcionan bien con un sólo input)
*\crisis=dummy 1 si t>2007 (variable escalón); 0 otro caso
*\sars(pandemia y 11s) y cen(volcán): dummies sars=> 1 si t>2000 &
t<2004 0
otro caso ; dummy cen=>1 si t=abril y mayo 2010 0 otro caso.
*\Modelo_1
xreg<-model.matrix(~as.factor(crisis))
*model1* <- Arima(Y_IB, order=c(0,1,1), seasonal=list(order=c(0,1,1)),
xreg=xreg)
*\Modelo_2
xreg<-model.matrix(~as.factor(sars)+~as.factor(cen))
*model2* <- Arima(Y_IB, order=c(0,1,1), seasonal=list(order=c(0,1,1),
period=12), xreg=xreg)
*\Modelo_3
xreg<-model.matrix(~as.factor(sars)+~as.factor(crisis)+~as.factor(cen))
*model3* <- Arima(Y_IB, order=c(0,1,1), seasonal=list(order=c(0,1,1),
period=12), xreg=xreg)
*\Comparación
ACC <- rbind.fill(data.frame(t(accuracy(model))),
data.frame(t(accuracy(model1))),
data.frame(t(accuracy(model2)))
)
ACC <- round(ACC,2)
ACC <- cbind(Type=c(?Model1?,?Model2?,?Model3?),ACC)
ACC[order(ACC$MAE),]
Type ME RMSE MAE MPE MAPE MASE
Model2 -8.88 127.93 95.84 -0.29 2.47 0.43
Model3 -8.81 127.90 95.90 -0.29 2.48 0.43
Model1 -7.87 128.72 97.51 -0.26 2.52 0.44
con modelo 2 ó 3 de forma gráfica no queda muy claro (adjunto gráfico)
*\Modelo_4
xreg<-model.matrix(~as.factor(cen))
*model4* <- Arima(Y_IB, order=c(0,1,1), seasonal=list(order=c(0,1,1),
period=12), xreg=xreg)
plot(Y_IB)
lines(fitted(model4),col=2):(de forma gráfica no se aprecia muy bien)
fitted(model4) *\comparo con los valores originales en este caso de Ibería
(Y_IB)
Y_IB
Model4
Abril_2010
4024
3997.621
Mayo_2010
4206
3954.679
Junio_2010
4437
4403.932
Julio_2010
4966
4770.645
Agos_2010
4914
4898.686
Sept_2010
4474
4567.054
Oct_2010
4566
4524.261
Nov_2010
4022
4112.943
Dic_2010
3993
4071.653
Alguien podría ayudarme.
Gracias por anticipado
Justo
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20120102/113b9db0/attachment-0001.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: serie_IB.png
Type: image/png
Size: 7861 bytes
Desc: no disponible
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20120102/113b9db0/attachment-0001.png>
Carlos Ortega
2012-Jan-03 17:45 UTC
[R-es] Duda sobre variables de impulso y escalón en series
Hola Justo, Feliz Año. Como referencia que creo que puede ser de gran utilidad, tienes un análisis equivalente completamente desarrollado en el libro: Séries temporelles avec R. Yves Aragon Springer 2011. El capítulo 8, "Trafic mensuel de l''aéroport de Toulouse-Blagnac" desarrolla justamente el caso de si el 9/11 tuvo o no impacto en el tráfico de ese aeropuerto, bajo diferentes asunciones y valorando diferentes modelos. Espero que puedas encontrar la manera de acceder al libro... Saludos, Carlos Ortega www.qualityexcellence.es El 2 de enero de 2012 10:50, Justo de Jorge Moreno <justodejorge@gmail.com>escribió:> Hola y feliz año, > > Estoy trabajando por primera vez (igual ando muy pérdido) con el paquete > forecast (modelos ARIMA)(Hyndman y Khandakar 2008) y utilizo series > mensuales de compañías aéreas. Estoy intentando analizar el impacto de > algunos de los acontecimientos que han podido influir en la variable > ingresos por viajero transportado (p.e el atentado del 11 de septiembre, > crisis de la ceniza abril-mayo 2010, crisis). He probado con diferentes > modelos pero no acabo de ver el impacto. Lo que hago es: > > 1) Estimar el modelo ARIMA > > 2) Contruir una/s variables de impulso (también escalón) > > 3) Comparar modelos > > He probado diferentes variantes. Parece que el modelo 4 (al final) mejora > los resultados.(Parece que los modelos ARIMA con variables exógenas > funcionan bien con un sólo input) > > *\crisis=dummy 1 si t>2007 (variable escalón); 0 otro caso > > *\sars(pandemia y 11s) y cen(volcán): dummies sars=> 1 si t>2000 & t<2004 > 0 otro caso ; dummy cen=>1 si t=abril y mayo 2010 0 otro caso. > > *\Modelo_1 > > xreg<-model.matrix(~as.factor(crisis)) > > *model1* <- Arima(Y_IB, order=c(0,1,1), seasonal=list(order=c(0,1,1)), > xreg=xreg) > > *\Modelo_2 > > xreg<-model.matrix(~as.factor(sars)+~as.factor(cen)) > > *model2* <- Arima(Y_IB, order=c(0,1,1), seasonal=list(order=c(0,1,1), > period=12), xreg=xreg) > > *\Modelo_3 > > xreg<-model.matrix(~as.factor(sars)+~as.factor(crisis)+~as.factor(cen)) > > *model3* <- Arima(Y_IB, order=c(0,1,1), seasonal=list(order=c(0,1,1), > period=12), xreg=xreg) > > *\Comparación > ACC <- rbind.fill(data.frame(t(accuracy(model))), > > data.frame(t(accuracy(model1))), > > data.frame(t(accuracy(model2))) > > ) > > ACC <- round(ACC,2) > > ACC <- cbind(Type=c(‘Model1’,’Model2’,’Model3’),ACC) > > ACC[order(ACC$MAE),] > > Type ME RMSE MAE MPE MAPE MASE > > Model2 -8.88 127.93 95.84 -0.29 2.47 0.43 > > Model3 -8.81 127.90 95.90 -0.29 2.48 0.43 > > Model1 -7.87 128.72 97.51 -0.26 2.52 0.44 > > con modelo 2 ó 3 de forma gráfica no queda muy claro (adjunto gráfico) > > *\Modelo_4 > > xreg<-model.matrix(~as.factor(cen)) > > *model4* <- Arima(Y_IB, order=c(0,1,1), seasonal=list(order=c(0,1,1), > period=12), xreg=xreg) > > plot(Y_IB) > > lines(fitted(model4),col=2):(de forma gráfica no se aprecia muy bien) > > fitted(model4) *\comparo con los valores originales en este caso de Ibería > (Y_IB) > > Y_IB > > Model4 > > Abril_2010 > > 4024 > > 3997.621 > > Mayo_2010 > > 4206 > > 3954.679 > > Junio_2010 > > 4437 > > 4403.932 > > Julio_2010 > > 4966 > > 4770.645 > > Agos_2010 > > 4914 > > 4898.686 > > Sept_2010 > > 4474 > > 4567.054 > > Oct_2010 > > 4566 > > 4524.261 > > Nov_2010 > > 4022 > > 4112.943 > > Dic_2010 > > 3993 > > 4071.653 > > Alguien podría ayudarme. > > Gracias por anticipado > > Justo > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >[[alternative HTML version deleted]]