Series de Tiempo en r

34
An´ alisis de Series de Tiempo Aplicaciones en R - Parte I Juan Carlos Campuzano S. Escuela Superior Polit´ ecnica del Litoral Semestre I 2013 J. Campuzano (E.S.P.O.L) Series de Tiempo en R Semestre I 2013 1 / 34

description

manual de series de tiempo en r para estadistica

Transcript of Series de Tiempo en r

AnalisisdeSeriesdeTiempoAplicacionesenR-ParteIJuanCarlosCampuzanoS.EscuelaSuperiorPolitecnicadel LitoralSemestreI2013J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 1/34PreliminaresEstaspracticasutilizanlospaquetesdeRqueacompa nanalaspublicacionesIntroductoryTimeSerieswithR,deCowperwait,P.yMetcalfe,A.(2009),TimeSeriesAnalysiswithRdeIanMcLeod,HaoYuyEsamMahdi(2012)yTimeSeriesAnalysiswithApplicationsinRdeCryer,J.yChan,K.(2008).Porlotanto,seaconsejainstalarlossiguientespaquetesantesdeempezar:R> install.packages("TSA",dep=TRUE)R> install.packages("RColorBrewer")R> install.packages("latticeExtra")R> install.packages("tseries")El documento de ayuda del paquete TSA lo puede descargar de la siguientedireccion: http://cran.r-project.org/web/packages/TSA/TSA.pdfLasdiapositivasfueronelaboradasenBeamerconlaayudadelpaqueteSASnRdisplay.J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 2/34PreliminaresPreliminaresLas series detiempo son analizadas para entenderelpasado y predecirelfuturo,permitiendoalosadministradoresohacedoresdepolticatomardecisionesinformadosapropiadamente.En terminos cientcos, el proposito del analisis de las series de tiempoesentenderomodelarelmecanismoestocasticoquedamovimientoaunaserieobservadaypredecirlosvaloresfuturosdelaseriebasadoensuhistoriayposiblementedeotrasseriesofactoresrelacionados.Losmetodosdeseriesdetiemposonutilizadastodoslosdasenlatomadedecisiones.Lasseriesdetiempotambiensuelenformarlabasedesimulacionesporcomputadora.J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 3/34GracodeSeriesdeTiempoGracodeSeriesdeTiempoEnestaseccionelinteresestaenlagracadelasseriesdetiempo. Dichosgracosgeneralmentesonelprimerpasoenunanalisisexploratorioypresentadosenunreportenal.J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 4/34GracodeSeriesdeTiempoGracodeSeriesdeTiempoEjemplo1: PaseoaleatorioUnodelosprocesosmaselementalparaelanalisisdeseriesdetiempoesunpaseoaleatorio:R> library(TSA)R> data(rwalk)R> plot(rwalk, ylab=Paseo Aleatorio, type=o)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 5/34GracodeSeriesdeTiempoGracodeSeriesdeTiempoEjemplo2: PreciosdelTrigoEsteejemplotienecomopropositomostrarelusodelcomandoplot()conlosdatosdel ndicedepreciosdeltrigoenCanada(Beveridgewheatpriceindex).R> library(TSA)R> data(bev)R> plot(bev)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 6/34GracodeSeriesdeTiempoGracodeSeriesdeTiempoEjemplo2: PreciosdelTrigoA nadiendoalgunasopcionesadicionalesalcomandoplot()sepuedentenermejoresresultados:R> win.graph(width=4.875, height=2.5, pointsize=8)R> plot(bev, ylab=indice, xlab=ano, type=o)R> plot(bev, ylab=indice, xlab=ano, type=l)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 7/34GracodeSeriesdeTiempoGacodeSeriesdeTiempoEjemplo3: EstacionalidadesEnocasionesuneventoserepitesistematicamentealolargodeltiempoyparaelanalisisdeseriesdetiempo,visualizarestospatronesresultas umamente util:R> data(oilfilters); plot(oilfilters, type=o, ylab=Ventas)R> win.graph(width=4.875, height=2.5, pointsize=8)R> plot(oilfilters, type=l, ylab=Ventas)R> points(y=oilfilters, x=time(oilfilters), pch=as.vector(season(oilfilters)))J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 8/34GracodeSeriesdeTiempoGracodeSeriesdeTiempoEjemplo4: GacodeM ultiplesSeriesdeTiempoEnotrasocasionestambienesimportantegracarm ultiplesseriesdetiempo:R> www CBE CBE[1:4, ]R> Elec.ts Beer.ts Choc.ts plot(cbind(Elec.ts, Beer.ts, Choc.ts))J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 9/34GracodeSeriesdeTiempoJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 10/34GracodeSeriesdeTiempoGracodeSeriesdeTiempoEjemplo5: Agrupaci onyTendenciasSinlugaradudas,agruparfrecuenciasyvisualizartendenciasesunadelosprincipalesanalisisgracosquesesuelenrealizaralasseriesdetiempo. Elejemploacontinuacioncorrespondeaobservacionessobreseriesdetemperaturas.Enelprimerpasoobserveselafrecuenciamensualdelaserieentrelosperiodosinicialynal:R> www Global Global.ts win.graph(width=4.875, height=2.5, pointsize=8)R> plot(Global.ts, ylab=Temperatura, xlab=periodo)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 11/34GracodeSeriesdeTiempoJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 12/34GracodeSeriesdeTiempoLuego,sepuedeprocederaagruparlasfrecuenciasporpromediosmensuales:R> Global.anual win.graph(width=4.875, height=2.5, pointsize=8)R> plot(Global.anual, ylab=Temp, xlab=Per)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 13/34GracodeSeriesdeTiempoFinalmente,seobservaquedesdelos70existeincrementoenlastemperaturas,porloqueseraimportanteanalizarlatendencia:R> New.series New.time win.graph(width=4.875, height=2.5, pointsize=8)R> plot(New.series); abline(reg=lm(New.series~New.time))J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 14/34GracodeSeriesdeTiempoGracodeSeriesdeTiempoEjemplo6: Descomposici ondeunaSerieSiexisteevidenciadeunatendenciaenunaserie,resulta utildescomponerlaserieparaestimarlatendenciayefectosestacionales. Sepresentaunejemploconlosdatosdeelectricidad.R> www CBE Elec.ts win.graph(width=4.875, height=3.5, pointsize=8)R> plot(decompose(Elec.ts))J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 15/34GracodeSeriesdeTiempoTambiensepuederealizarunadescomposicionmultiplicativa...:R> Elec.decom win.graph(width=4.875, height=3.5, pointsize=8)R> plot(Elec.decom)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 16/34GracodeSeriesdeTiempo... osuperponerlatendenciayelcomponenteestacional.R> Trend Seasonal ts.plot(cbind(Trend, Trend * Seasonal), lty = 1:2)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 17/34CorrelacionFuncionesdeautocorrelaci onProcesosEstacionariosCorrelogramaElprincipalpropositodelcorrelogramaesdetectarautocorrelacionesenlasseriesdetiempoluegodehaberlesremovidoyestimadolatendenciaylavariacionestacional. ElsiguienteejemploserealizaconlaseriedePasajerosquevieneenelpaqueteR.R> data(AirPassengers)R> AP AP.decom plot(ts(AP.decom$random[7:138]))R> acf(AP.decom$random[7:138])J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 18/34CorrelacionSeriePasajeros(estacionaria) CorrelogramaJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 19/34ProcesosARMAAnalisisProcesosAR(p)R> win.graph(width=4.875, height=3, pointsize=8)R> data(ar1.s); plot(ar1.s, ylab=expression(Y[t]), type=o)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 20/34ProcesosARMACorrelacionentrelosrezagostyt 1R> win.graph(width=3, height=3, pointsize=8)R> plot(y=ar1.s,x=zlag(ar1.s),ylab=expression(Y[t]),xlab=expression(Y[t-1]), type=p)R> acf(ar1.s)Relacionentrerezagos CorrelogramaJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 21/34ProcesosARMASimulaci onProcesosARMAAR(2)Simulemoselprocesovistoenclases,unAR(2)delaforma:Yt= 0.5Yt1 + 0.3Yt2 + tcon100observaciones:R> ar.sim ar.simLafunciondeautocorrelacionsimple(acf):R> ar.acf ar.acfJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 22/34ProcesosARMALasgracasdelprocesoanteriorseobtienende:R> win.graph(width=4.875, height=3, pointsize=8)R> plot(ar.sim, ylab=expression(Y[t]), type=o)R> ar.acf ar.acfYt= 0.5Yt1 + 0.3Yt2 + tCorrelogramaJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 23/34ProcesosARMAAhorasimulemosunavariantedelprocesoanterior:Yt= 0.5Yt10.3Yt2 + tcon100observaciones:R> ar.sim2 ar.sim2Lafunciondeautocorrelacionsimple:R> ar.acf ar.acfJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 24/34ProcesosARMALasgracasdelprocesoanteriorseobtienende:R> win.graph(width=4.875, height=3, pointsize=8)R> plot(ar.sim2, ylab=expression(Y[t]), type=o)R> ar.acf ar.acfYt= 0.5Yt10.3Yt2 + tCorrelogramaJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 25/34ProcesosARMAQuesucedecuandoelprocesoNOESestacionario?SimulemoselprocesoYt= 0.9Yt1 + 0.3Yt2 + tcon100observaciones:R> ar.sim3 ar.sim3Lafunciondeautocorrelacionsimple:R> ar.acf ar.acfJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 26/34ProcesosARMALasgracasdelprocesoanteriornosdanunapista:R> win.graph(width=4.875, height=3, pointsize=8)R> plot(ar.sim3, ylab=expression(Y[t]), type=o)R> ar.acf ar.acfYt= 0.9Yt1 + 0.3Yt2 + tCorrelogramaJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 27/34ProcesosARMASimulaci onProcesosARMAMA(2)AhorasimulemosunMA(2)delaforma: Yt= t 0.7t1 + 0.1t2con100observaciones:R> ma.sim ma.simLagracadelprocesoanteriorseobtienede:R> win.graph(width=4.875, height=3, pointsize=8)R> plot(ma.sim, ylab=expression(e[t]), type=o)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 28/34ProcesosARMALasfuncionesdeautocorrelacionsimpleyparcial:R> ma.acf ma.acfR> ma.pacf ma.pacfFunciondeautocorrelacionsimpleACFFunciondeautocorrelacionparcialPACFJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 29/34ProcesosARMASimulaci onProcesosARMAARMA(2,2)AhorasimulemosunARMA(2,2)delaforma:Yt= 0.5Yt10.2Yt2 + t 0.4t1 + 0.3t2con100observaciones:R> arma.sim arma.simJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 30/34ProcesosARMAElprocesoanteriorseveracomo:R> require("tseries")R> win.graph(width=4.875, height=3, pointsize=8)R> ts.plot(arma.sim)J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 31/34ProcesosARMALasfuncionesdeautocorrelacionsimpleyparcial:R> arma.acf arma.acfR> arma.pacfarma.pacfFunciondeautocorrelacionsimpleACFFunciondeautocorrelacionparcialPACFJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 32/34ProcesosARMAPararecordarElordendeunprocesoAR(p)seanalizaenlafunciondeautocorrelacionparcial,pacf,mientraslaestacionariedadseanalizaenlafunciondeautocorrelacionsimple,acf.ElordendeunprocesoMA(q)seanalizaenlafunciondeautocorrelacionsimpre,acf,mientrasquelainvertibilidadseanalizaenlafunciondeautocorrelacionparcial,pacf.J.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 33/34BibliografaBibliografaCowperwait,P.,Metcalfe,A.(2009)IntroductoryTimeSerieswithR.Springer.A.IanMcLeod,HaoYu,EsamMahdi(2012)TimeSeriesAnalysiswithR. HandbookofStatistics. Volume30. Pages661-712.ElsevierCryer,J.,Chan,K.(2008)TimeSeriesAnalysiswithApplicationsinR. SpringerJ.Campuzano (E.S.P.O.L) SeriesdeTiempoenR SemestreI2013 34/34