Thursday, October 20, 2016

Bewegende gemiddelde van tydreekse in r

Top Menu Time Series en vooruitskatting R het 'n uitgebreide fasiliteite vir die ontleding van tydreeksdata. Hierdie afdeling beskryf die skepping van 'n tydreeks, seisoenale decompostion, modellering met eksponensiële en ARIMA modelle, en voorspel met die voorspelling pakket. Die skep van 'n tydreeks Die ts () funksie sal 'n numeriese vektor omskep in 'n R tydreekse voorwerp. Die formaat is ts (vektor, begin, einde, frekwensie) waar begin en einde is die tye van die eerste en laaste waarneming en frekwensie is die aantal waarnemings per eenheid tyd (1annual, 4quartly, 12monthly, ens). red 'n numeriese vektor met 72 maandelikse waarnemings van Januarie 2009 tot Desember 2014 as 'n tydreeks voorwerp myts LT ts (myvector, startc (2009, 1), endc (2014 12), frequency12) subset die tydreeks (Junie 2014 tot Desember 2014) myts2 LT venster (myts, startc (2014 6), endc (2014 12)) plot reeks plot (myts) Seisoene Ontbinding n tydreeks met toevoeging tendens, seisoenale en onreëlmatige komponente kan ontbind word met behulp van die STL () funksie. Let daarop dat 'n reeks met vermenigvuldigende uitwerking dikwels deur kan omskep word in 'n reeks met toevoeging effekte deur 'n log transformasie (dit wil sê salamanders LT log (myts)). Seisoenale ontbinding pas LT STL (myts, s. windowperiod) plot (pas) addisionele erwe monthplot (myts) biblioteek (voorspelling) seasonplot (myts) Eksponensiële modelle Beide die HoltWinters () funksie in die basis installasie, en die ETS () funksie in die vooruitsig pakket, kan gebruik word om eksponensiële modelle inpas. eenvoudige eksponensiële - modelle vlak fiks LT HoltWinters (myts, betaFALSE, gammaFALSE) dubbel eksponensiële - modelle vlak en tendens inpas LT HoltWinters (myts, gammaFALSE) driedubbele eksponensiële - modelle vlak, tendens, en seisoenale komponente pas LT HoltWinters (myts) voorspellingsakkuraatheid biblioteek (voorspelling) akkuraatheid (pas) voorspel volgende drie toekomstige waardes biblioteek (voorspelling) voorspel (fiks, 3) plot (voorspelling (fiks, 3)) ARIMA Models Die funksie ARIMA () gebruik kan word om 'n outoregressiewe pas geïntegreerde bewegende gemiddeldes model. Ander nuttige funksies sluit in: uitgesak weergawe van tydreekse, verskuif terug k observationsNLDS: Nationals klop Dodgers 8-3 om 2-1 voorsprong in reeks Washington Nationals8217 Jayson Werth neem, gelaat, vier met Anthony Rendon nadat hy op 'n enkele deur Bryce Harper tydens die derde beurt in Game 3 van baseball8217s Nasionale Liga Afdeling Series in Los Angeles, Maandag, 10 Oktober 2016 (AP Photo / Jae C. Hong) by Bet HARRIS die Associated Press gepubliseer: 11 Oktober 2016 13:21 Opgedateer: 10 Oktober 2016 21:58 NLDS Werths lang Homer in negende help Washington trek weg. Los Angeles Jayson Werth wou nog altyd 'n huis hardloop getref uit Dodger-stadion toe hy twee seisoene gespeel het in die agbare ball. Sy jongste poging het naby met 'n 450-voet ontploffing in die bolope van die linker-veld paviljoen. Werths Homer gehelp oop 'n een-run spel breek in die negende beurt, die verskuiwing van die Washington Nationals binne een oorwinning van die neem van 'n postseason reeks vir die eerste keer met 'n 8-3 oorwinning oor die Los Angeles Dodgers op Maandag en 'n 2-1 voorsprong in hul beste-van-vyf NL playoff. Heck, hy vasgebind selfs Babe Ruth met sy 15 loopbaan postseason Homer, goed vir 11 all-time. Sedert Dusty (Baker) my intrek in die twee-gat, ek het net gevoel asof my werk is op basis vir die diere agter my te kry, sê Werth, waarvan drie treffers vasgebind n postseason loopbaan hoog. Vier verligting gekombineer vir 4 2/3 shutout beurt, om die burgers in posisie te draai die NL Afdeling Series gister by Dodger-stadion. Hulle werk vinnig en theyre nie bang om te gaan na iemand, sê die derde baseman Anthony Rendon, wat 'n twee-run homer in 'n vier-run derde dat Kenta Maeda gejaag getref. Werth bygevoeg, Dit gee ons selfvertroue. Ek voel soos die bullpen gaan op hou en wat dalk nie die geval of die gevoel in die afgelope jare gewees het. NL Oos-kampioene vir die derde keer in vyf jaar, die Natte was nie in staat om te bevorder in hul vorige twee besoeke aan die postseason. Hulle verloor in die Afdeling Series na St Louis in 2012 en San Francisco in 2014 Im hoop dit is ons jaar, sê Werth. Was-stryd getoets is playoff-getoets en weve het 'n goeie groep ouens. Weve speel saam 'n lang tyd, so ek voel soos hierdie is ons kans. Nou 37 en met sy 2008 World Series kampioenskap in Philadelphia lank agter hom, Werth sintuie tyd inbreuk maak op hom. Dit is duidelik dat ek kan nie vir ewig speel hierdie speletjie, het hy gesê. So ek voel soos dit is ons kans en ek voel ook soos miskien is dit my laaste kans om dit te doen. Die franchise gewen een playoff reeks die Montreal Expos klop Philadelphia na aanleiding van die staking verkort 1981 seisoen voor die verlies van die Dodgers in die NL Championship-reeks. Die span het van Montreal na Washington voor die 2005-seisoen. Speel 23 uur na die Nationals vasgebind die reeks by die huis in 'n reën uitgestel Game 2, die Dodgers weer gesukkel teen linkshandig pitching, 'n probleem in die hele seisoen wanneer hulle 'n groot liga-ergste 0,213 gemiddelde teen lefties. Vier Washington Lefty verligting stymied die Dodgers in die eerste twee wedstryde. Teenoor Lefty voorgereg Gio Gonzalez in Game 3, het hulle drie lopies en vier treffers in 4 1/3 beurt. Die enigste Dodgers hitter met bewese sukses teen Gonzalez was vanger Carlos Ruiz, en hy het deur met 'n twee-run,-knippie getref Homer in die vyfde dat hul tekort te sny om 4-3. Ek het 'n slegte plek, maar die bullpen was ongelooflik, sê Gonzalez. Die taai om te gaan op die pad en wen in die play offs. Ek het agter hulle, maar ek wens ek het dat 'n mens steek terug. Daarna het die Dodgers gemonster net 'n paar van die enkelspel af 'n Nats bullpen wat lefties Sammy Solis en Oliver Perez ingesluit, en didnt bevorder 'n hardloper afgelope eerste basis. Solis gelikwideer met die oorwinning. Nou, is die vier-time verdedigende NL Wes-kampioene in die gesig staar uitwissing. Was nie bang vir hierdie, het gesê nuweling bestuurder Dave Roberts. Theres geen stop in ons ouens. Wel gereed môre om 'n baseball wedstryd te wen, kan ek jou belowe. Dit was nog 4-3 toe Werth homered op 'n 1-0 veld van All-Star nader Kenley Jansen voorste af die negende. Ryan Zimmerman bygevoeg 'n twee-run dubbel dié wip reg veldwerker Josh Reddicks handskoen op die muur van die treffer behaal Daniel Murphy en Bryce Harper, wat albei geloop. Jansen, die spanne all-time spaar leier, is uitgeruk. Los Angeles gebruik al sewe van sy verligting in die spel. Maeda moed opgegee vier lopies en vyf treffers in drie beurte. Die Japannese regs-kolwer wat 'n span lei 16 wedstryde gewen is een van sewe nuwelinge op die Dodgers NLDS rooster. Kenta vermis en kry agter, het Roberts gesê. Sy Fast Ball uitgelek terug agter die plaat en hulle het hom betaal. Dit was 'n goeie wedstryd tot die negende. Dis bofbal. Maeda afgetree die kant in die tweede, treffende uit twee, voordat verwelking in die derde plek. Hy het die beurt deur vier treffers in vyf kolwers. Werths RBI dubbel in die regs-veld hoek vasgebind die spel 1-elk. Harper getref 'n RBI enkel - en Rendon gevolg met sy twee-run skoot na links-veld paviljoen vir 'n 4-1 voorsprong. Dodgers nuweling Corey Seager het voortgegaan om sy eerste beurt sukses in die reeks, slaan 'n RBI verdubbel van die muur af 'n 1-0 voorsprong ná homering in die eerste beurt van Games 1 en 2. Nationals SS Danny Espinosa het getref deur 'n helling van Maeda in die derde beurt, die derde keer hes getref, wat is die mees in NLDS geskiedenis. Hy roetes Shane Victorino, wat vier keer in die 2013 Vigs teen Boston getref vir die meeste in 'n afdeling reeks in groot liga geskiedenis. Dodgers nuweling Julio Uría (5-2, 3.39 ERA) is geskeduleer om spel 4 begin, maar die Dodgers kon terugbring Game 1 wenner Clayton Kershaw op kort rus met hul seisoen op die lyn. Uría het twee begin teen die Nationals hierdie seisoen. Hy het toegelaat dat twee lopies en ses treffers in vyf beurte van 'n no-besluit by die huis op 22 Junie Die hotklou toegelaat een lopie in vier beurte op 21 Julie by Washington. Die Dodgers het albei wedstryde. Die Burgers het nog hul voorgereg kondig. Dit is moontlik RHP Joe Ross sou Game 4 begin en Game 1 verloorder Max Scherzer sou die heuwel neem as Game 5 nodig. Burgers 8, Dodgers 3 Washington AB R H BI BB SO Gem. T. Turner CF 5 1 1 0 0 3 0,250 Werth LF 4 2 3 2 1 0 0,417 Murphy 2b 4 1 0 0 1 1 0,400 Harper RF 2 2 1 1 2 0 0,273 Rendon 3b 4 1 1 2 1 0 0,250 Zimmerman 1b 4 1 2 2 1 1 0,455 Espinosa SS 2 0 0 0 0 1 0,000 Solis p 0 0 0 0 0 0 --- c-Robinson pH 1 0 0 0 0 0 0,500 Perez p 0 0 0 0 0 0 --- Kelley p 0 0 0 0 0 0 --- e-Heisey pH 0 0 0 1 0 0 --- Melancon p 0 0 0 0 0 0 --- Lobaton c 3 0 1 0 0 0. 286 1-Severino pr-c 2 0 0 0 0 1 0,200 G. Gonzalez p 2 0 0 0 0 2 0,000 Drew SS 2 0 0 0 0 2 0,000 Totaal 35 8 9 8 6 11 Los Angeles AB RH BI BB SO Gem. Kendrick LF 4 0 1 0 0 0 0,250 J. Turner 3b 2 1 0 0 2 1 0,500 Seager SS 4 0 1 1 0 2 0,231 Puig RF 3 0 0 0 0 1 0,000 d-Tôles pH 1 0 0 0 0 0 0,250 Jansen p 0 0 0 0 0 0 --- jongman tog p 0 0 0 0 0 0 --- A. Gonzalez 1b 4 0 1 0 0 1 0,154 Grandal c 4 0 0 0 0 1 0,182 Culberson 2b 3 0 0 0 0 0 0,000 Blanton p 0 0 0 0 0 0 --- Reddick RF 1 0 0 0 0 0 0,222 Pederson CF 4 1 1 0 0 2 0,222 Maeda p 0 0 0 0 0 0 --- 'n Barnes pH 1 0 0 0 0 1 0,000 Baez p 0 0 0 0 0 0 --- b-Ruiz pH 1 1 1 2 0 0 0,500 Dayton p 0 0 0 0 0 0 --- Fields p 0 0 0 0 0 0 --- Avilan p 0 0 0 0 0 0 --- Utley 2b 1 0 1 0 0 0 0,222 Totaal 33 3 6 3 2 9 Washington 004 000 004 8 9 0 Los Angeles 100 020 000 3 6 1 'n-doodgetrek vir Maeda in die 3de. b-homered vir Baez in die 5de. - C bewaring gehou vir Solis in die 7de. - D in bewaring gehou vir Puig in die 8ste. e-uit op offer vlieg vir Kelley in die 9de. 1-hardloop vir Lobaton in die 6de. EGrandal (1). LOBWashington 9, Los Angeles 5. 2BWerth (1), Zimmerman (1), Kendrick (1), Seager (1). HRRendon (1), af Maeda Werth (1), af Jansen Ruiz (1), af G. Gonzalez. RBIsWerth 2 (2), Harper (1), Rendon 2 (2), Zimmerman 2 (2), Heisey (1), Seager (1), Ruiz 2 (2). SBHarper (1). SFHeisey. Runners links in scoring positionWashington 5 (Murphy 2, Zimmerman 2, Espinosa) Los Angeles 2 (Seager, A. Gonzalez). RISPWashington 3 vir 8 Los Angeles 0 vir 4. Runners verskuif upJ. Turner. Washington IP HR DAAR BB SO ERA G. Gonzalez 413 4 3 3 1 4 6.23 Solis W, 1-0 123 1 0 0 1 1 0,00 Perez H, 1 13 1 0 0 0 1 0.00 Kelley H, 1 123 0 0 0 0 3 0.00 Melancon 1 0 0 0 0 0 0.00 Los Angeles IP HR DAAR BB SO ERA Maeda L, 0-1 3 5 4 4 2 4 12,00 Baez 2 0 0 0 2 1 0.00 Dayton 13 1 0 0 0 1 5.40 Fields 13 0 0 0 1 1 0.00 Avilan 23 0 0 0 0 1 0.00 Blanton 123 1 0 0 0 3 0.00 Jansen 13 2 4 4 1 0 18.00 jongman tog 23 0 0 0 0 0 0.00 Geërf naaswenners scoredKelley 1-0, Fields 1-0, Avilan 2-0, jongman tog 1-1. HBPMaeda (Espinosa), Jansen (Harper). WPAvilan. UmpiresHome, Ron Kulpa Eerste, Tom Hallion Tweede, Jeff Kellogg Derde, Manny Gonzalez Reg, Chris Guccione Links, Dan Bellino. T4: 12. A53,901 (56000). (Beste-van-5 x-as dit nodig is almal op FS1) Washington 2, Los Angeles 1 Game 1 LA 4, Washington 3 Game 2 Washington 5, LA 2 Game 3 Washington 8, LA 3 Dinsdag Washington by LA (Uría 5-2 ), 15:05 x-Donderdag LA by Washington, TBAUsing R vir Tydreeksanalise Tydreeksanalise Hierdie boekie itells jy hoe om die R statistiese sagteware gebruik 'n paar eenvoudige ontledings wat algemeen in die ontleding van tydreeksdata is om uit te voer. Hierdie boekie aanvaar dat die leser het 'n paar basiese kennis van tydreeksanalise, en die skoolhoof fokus van die boekie is tydreeksanalise nie te verduidelik nie, maar eerder om te verduidelik hoe hierdie ontledings uit te voer met behulp van R. As jy nuut is tot tyd reeks analise, en meer wil weet oor enige van die wat hier aangebied konsepte leer, sou ek raai die Open University boek 8220Time series8221 (produk-kode M249 / 02), by die Open University winkel. In hierdie boekie sal ek gebruik tydreeksdata stelle wat reeds vriendelik beskikbaar deur Rob Hyndman in sy tydreeksdata Biblioteek by robjhyndman / TSDL / gemaak. As jy graag hierdie boekie, kan jy ook graag om te kyk na my boekie oor die gebruik van R vir biomediese statistieke, a-little-book-of-r-for-biomedical-statistics. readthedocs. org/. en my boekie oor die gebruik van R vir meerveranderlike analise, little-book-of-r-for-multivariate-analysis. readthedocs. org/. Lees tydreeksdata Die eerste ding wat jy sal wil hê om te doen om jou tyd reeks te ontleed om dit te lees in R en die tydreeks te stip. Jy kan data te lees in R met behulp van die funksie scan (), wat veronderstel dat u data vir opeenvolgende tyd punte is in 'n eenvoudige teks lêer met een kolom. Byvoorbeeld, die lêer robjhyndman / tsdldata / misc / kings. dat bevat inligting oor die ouderdom van die dood van opeenvolgende konings van Engeland, wat begin met Willem die Veroweraar (oorspronklike bron: Hipel en McLeod, 1994). Die datastel lyk soos volg: Net die eerste paar reëls van die lêer het getoon. Die eerste drie reëls bevat 'n kommentaar op die data, en ons wil dit te ignoreer wanneer ons die data te lees in R. Ons kan dit gebruik deur die gebruik van die parameter 8220skip8221 van die skandering () funksie, wat bepaal hoeveel lyne aan die bokant van die lêer om te ignoreer. Om die lêer in R lees, ignoreer die eerste drie reëls, tik ons: In hierdie geval is die ouderdom van die dood van 42 opeenvolgende konings van Engeland is gelees in die veranderlike 8216kings8217. Sodra jy die tydreeksdata in R gelees het, die volgende stap is om die data op te slaan in 'n tydreeks voorwerp in R, sodat jy R8217s baie funksies kan gebruik vir die ontleding van tydreeksdata. Om die data in 'n tydreeks voorwerp te slaan, gebruik ons ​​die lepels () funksie in R. Byvoorbeeld, om die data in die veranderlike 8216kings8217 as 'n tydreeks voorwerp in R stoor, tik ons: Soms is die tydreeksdata te stel dat jy het dalk ingesamel met gereelde tussenposes wat minder as een jaar was, byvoorbeeld, maandeliks of kwartaalliks. In hierdie geval, kan jy die aantal kere wat data per jaar ingesamel is deur die gebruik van die parameter 8216frequency8217 in die lepels () funksie gee. Vir maandelikse tydreeksdata, jy frequency12 stel, terwyl dit vir kwartaallikse tydreeksdata, jy frequency4 stel. Jy kan ook die eerste jaar wat die data is ingesamel spesifiseer, en die eerste interval in daardie jaar deur die gebruik van die parameter 8216start8217 in die lepels () funksie. Byvoorbeeld, as die eerste data punt ooreenstem met die tweede kwartaal van 1986, sou jy startc (1986,2) stel. 'N Voorbeeld is 'n datastel van die aantal geboortes per maand in New York City, vanaf Januarie 1946 tot Desember 1959 (oorspronklik ingesamel deur Newton). Hierdie data is beskikbaar in die lêer robjhyndman / tsdldata / data / nybirths. dat Ons die data in R kan lees, en stoor dit as 'n tydreeks voorwerp, deur te tik: Net so is die lêer robjhyndman / tsdldata / data / fancy. dat bevat maandelikse verkope vir 'n souvenir winkel by die see oord in Queensland, Australië, vir Januarie 1987-Desember 1993 (oorspronklike data van wielmaker en Hyndman, 1998). Ons kan die data in R gelees deur te tik: Plot Tyd Reeks Sodra jy 'n tydreeks in R gelees het, is die volgende stap is gewoonlik om 'n plot van die tydreeksdata, wat jy kan doen met die plot. ts maak () funksie in R. byvoorbeeld, om die tydreeks van die ouderdom van die dood van 42 opeenvolgende konings van Engeland plot, tik ons: ons kan sien uit die tyd plot dat hierdie tyd reeks waarskynlik kan beskryf word met behulp van 'n toevoeging model, aangesien die ewekansige skommelinge in die data is min of meer konstant in grootte met verloop van tyd. Net so, om die tydreeks van die aantal geboortes per maand in New York stad plot, tik ons: Ons kan sien uit hierdie tyd reeks wat dit lyk asof daar seisoenale variasie in die aantal geboortes per maand wees: daar is 'n hoogtepunt elke somer , en 'n trog elke winter. Weereens, dit blyk dat hierdie tyd reeks waarskynlik kan beskryf word met behulp van 'n toevoeging model, soos die seisoenale skommelinge is min of meer konstant in grootte met verloop van tyd en lyk nie te afhanklik van die vlak van die tydreeks, en die ewekansige skommelinge lyk ook te wees ongeveer konstant in grootte met verloop van tyd. Net so, om die tydreeks van die maandelikse verkope vir die souvenir winkel by die see oord in Queensland, Australië plot, tik ons: In hierdie geval, dit blyk dat 'n toevoeging model is nie geskik vir die beskrywing van hierdie tyd reeks, aangesien die grootte van die seisoenale skommelinge en ewekansige skommelinge lyk verhoog met die vlak van die tydreeks. Dus, kan ons nodig het om die tydreeks te transformeer ten einde 'n getransformeerde tydreekse wat beskryf kan word met behulp van 'n toevoeging model kry. Byvoorbeeld, kan ons die tydreeks te omskep deur die berekening van die natuurlike log van die oorspronklike data: Hier kan ons sien dat die grootte van die seisoenale skommelinge en ewekansige skommelinge in die log omskep tydreekse lyk min of meer konstant oor tyd te wees, en te doen nie afhang van die vlak van die tydreeks. Dus, kan die log omskep tydreekse waarskynlik beskryf met behulp van 'n toevoeging model. Ontbindende Tyd Reeks ontbindende 'n tydreeks beteken skei dit in sy samestellende komponente, wat gewoonlik 'n tendens komponent en 'n onreëlmatige komponent, en as dit is 'n seisoenale tyd reeks, 'n seisoenale komponent. Ontbindende Nie Seisoene Data 'n Nie-seisoen tyd reeks bestaan ​​uit 'n tendens komponent en 'n onreëlmatige komponent. Ontbind die tydreeks behels probeer om die tydreeks te skei in hierdie komponente, dit wil sê die skatte van die die tendens komponent en die onreëlmatige komponent. Om die tendens komponent van 'n nie-seisoenale tydreekse wat beskryf kan word met behulp van 'n toevoeging model skat, is dit algemeen om 'n glad metode gebruik, soos die berekening van die eenvoudige bewegende gemiddelde van die tydreeks. Die funksie SMA () in die 8220TTR8221 R pakket kan gebruik word om tydreeksdata glad met behulp van 'n eenvoudige bewegende gemiddelde. Om hierdie funksie te gebruik, moet ons eers die 8220TTR8221 R pakket te installeer (vir instruksies oor hoe om 'n R-pakket te installeer, sien Hoe om 'n R-pakket te installeer). Sodra jy die 8220TTR8221 R pakket geïnstalleer is, kan jy die 8220TTR8221 R pakket te laai deur te tik: Jy kan dan gebruik die 8220SMA () 8221 funksie om tydreeksdata glad. Om die funksie SMA () te gebruik, moet jy aan die orde (span) van die eenvoudige bewegende gemiddelde spesifiseer, met behulp van die parameter 8220n8221. Byvoorbeeld, 'n eenvoudige bewegende gemiddelde van orde 5 bereken, het ons N5 in die funksie SMA (). Byvoorbeeld, soos hierbo bespreek, die tydreeks van die ouderdom van die dood van 42 opeenvolgende konings van Engeland verskyn is nie-seisoenale, en kan waarskynlik beskryf met behulp van 'n toevoeging model, aangesien die ewekansige skommelinge in die data is min of meer konstant in grootte oor tyd: dus, kan ons probeer om die tendens komponent van hierdie tyd reeks skat deur glad met behulp van 'n eenvoudige bewegende gemiddelde. Om die tydreeks glad met behulp van 'n eenvoudige bewegende gemiddelde van orde 3, en plot die stryk tydreeksdata, tik ons: Daar blyk nog heelwat ewekansige skommelinge in die tyd reeks wees stryk met behulp van 'n eenvoudige bewegende gemiddelde van orde 3. So, om die tendens komponent meer akkuraat te skat, kan ons wil om te probeer glad die data met 'n eenvoudige bewegende gemiddelde van 'n hoër orde. Dit neem 'n bietjie van probeer-en-fout, om die regte hoeveelheid smoothing vind. Byvoorbeeld, kan ons probeer om met behulp van 'n eenvoudige bewegende gemiddelde van orde 8: Die stryk met 'n eenvoudige bewegende gemiddelde van orde 8 data gee 'n duideliker prentjie van die tendens komponent, en ons kan sien dat die ouderdom van die dood van die Engelse konings lyk afgeneem het vanaf ongeveer 55 jaar oud om ongeveer 38 jaar oud tydens die bewind van die eerste 20 konings, en dan verhoog nadat sowat 73 jaar oud teen die einde van die regering van die 40ste koning in die tyd reeks. Ontbindende Seisoene Data A seisoenale tyd reeks bestaan ​​uit 'n tendens komponent, 'n seisoenale komponent en 'n onreëlmatige komponent. Ontbind die tydreeks beteken skeiding van die tydreeks in hierdie drie komponente: dit wil sê, die skatte van hierdie drie komponente. Om die tendens komponent en seisoenale komponent van 'n seisoenale tyd reeks wat beskryf kan word met behulp van 'n toevoeging model skat, kan ons die 8220decompose () 8221 funksie in R. Hierdie funksie skat die tendens, seisoenale en onreëlmatige komponente van 'n tydreeks te gebruik wat beskryf kan word met behulp van 'n toevoeging model. Die funksie 8220decompose () 8221 gee 'n lys voorwerp as gevolg, waar die skat van die seisoenale komponent, tendens komponent en onreëlmatige komponent in die naam van elemente van die lys voorwerpe gestoor word, onderskeidelik bekend as 8220seasonal8221, 8220trend8221, en 8220random8221. Byvoorbeeld, soos hierbo bespreek, die tydreeks van die aantal geboortes per maand in New York stad is seisoenale met 'n hoogtepunt elke somer en trog elke winter, en kan waarskynlik beskryf met behulp van 'n toevoeging model sedert die seisoen-en toevallige fluktuasies lyk wees rofweg konstante in grootte met verloop van tyd: Om die tendens skat, seisoenale en onreëlmatige komponente van hierdie tydreekse, tik ons: die beraamde waardes van die seisoenale, tendens en onreëlmatige komponente word nou gestoor in veranderlikes birthstimeseriescomponentsseasonal, birthstimeseriescomponentstrend en birthstimeseriescomponentsrandom. Byvoorbeeld, kan ons uit die geskatte waardes van die seisoenale komponent druk deur tik: Die beraamde seisoenale faktore gegee word vir die maande Januarie-Desember, en is dieselfde vir elke jaar. Die grootste seisoenale faktor is vir Julie (ongeveer 1,46), en die laagste is vir Februarie (sowat -2,08), wat daarop dui dat dit lyk asof daar 'n hoogtepunt in geboortes in Julie en 'n trog in geboortes in Februarie elke jaar. Ons kan die geskatte tendens, seisoenale en onreëlmatige komponente van die tydreeks te stip met behulp van die 8220plot () 8221 funksie, byvoorbeeld: Die plot hierbo toon die oorspronklike tydreekse (bo), die beraamde tendens komponent (tweede van bo), die beraamde seisoenale komponent (derde van bo), en die beraamde onreëlmatige komponent (onder). Ons sien dat die beraamde tendens komponent toon 'n klein afname van sowat 24 in 1947 tot sowat 22 in 1948, gevolg deur 'n geleidelike toename van toe af tot ongeveer 27 in 1959. Seisoenaal aanpassing As jy 'n seisoenale tyd reeks wat beskryf kan word met behulp van 'n toevoeging model, kan jy pas seisoenaal die tydreeks deur die skatte van die seisoenale komponent, en trek die beraamde seisoenale komponent van die oorspronklike tyd reeks. Ons kan dit doen met behulp van die skatting van die seisoen komponent bereken deur die 8220decompose () 8221 funksie. Byvoorbeeld, om seisoenaal pas die tydreeks van die aantal geboortes per maand in New York City, kan ons die seisoenale komponent met behulp van 8220decompose () 8221 skat, en dan trek die seisoenale komponent van die oorspronklike tyd reeks: Ons kan dan stip die seisoensaangepaste tydreeks met behulp van die 8220plot () 8221 funksie, deur te tik: Jy kan sien dat die seisoenale variasie het uit die seisoensaangepaste tydreeks verwyder. Die seisoensaangepaste tydreeks nou net bevat die tendens komponent en 'n onreëlmatige komponent. Voorspellings met behulp van Eksponensiële Smoothing Eksponensiële smoothing kan gebruik word om kort termyn voorspellings te maak vir tydreeksdata. Eenvoudige Eksponensiële Smoothing As jy 'n tydreeks wat beskryf kan word met behulp van 'n toevoeging model met 'n konstante vlak en geen seisoenaliteit, kan jy eenvoudig eksponensiële gladstryking gebruik om kort termyn voorspellings te maak. Die eenvoudige eksponensiële gladstryking metode bied 'n manier om die skatte van die vlak van die huidige tyd punt. Smoothing word beheer deur die parameter alfa vir die skatting van die vlak van die huidige tyd punt. Die waarde van alfa lê tussen 0 en 1. Waardes van alfa wat naby aan 0 is dat min gewig is geplaas op die mees onlangse waarnemings wanneer voorspellings van toekomstige waardes. Byvoorbeeld, die lêer robjhyndman / tsdldata / Hurst / precip1.dat bevat totale jaarlikse reënval in duim na Londen, 1813-1912 (oorspronklike data van Hipel en McLeod, 1994). Ons kan die data in R lees en plot dit deur te tik: Jy kan sien uit die plot dat daar min of meer konstant vlak (die gemiddelde konstant bly op ongeveer 25 duim). Die ewekansige skommelinge in die tyd reeks lyk min of meer konstant in grootte met verloop van tyd te wees, so dit is waarskynlik geskik is vir die data met behulp van 'n toevoeging model beskryf. Dus, kan ons voorspellings te maak met behulp van eenvoudige eksponensiële gladstryking. Vooruitskattings met behulp van eenvoudige eksponensiële gladstryking in R te maak, kan ons 'n eenvoudige eksponensiële gladstryking voorspellende model pas met behulp van die 8220HoltWinters () 8221 funksie in R. aan HoltWinters () vir eenvoudige eksponensiële gladstryking gebruik, moet ons die parameters betaFALSE en gammaFALSE in die stel HoltWinters () funksie (die beta en gamma parameters word gebruik vir Holt8217s eksponensiële gladstryking, of Holt-Winters eksponensiële gladstryking, soos hieronder beskryf). Die funksie HoltWinters () gee terug 'n lys veranderlike, wat 'n paar genoem elemente bevat. Byvoorbeeld, om eenvoudige eksponensiële gladstryking gebruik om voorspellings te maak vir die tyd reeks jaarlikse reënval in Londen, tik ons: Die uitset van HoltWinters () vertel ons dat die geskatte waarde van die alfa parameter is oor 0,024. Dit is baie naby aan nul, om ons te vertel dat die voorspellings is gebaseer op beide onlangse en minder onlangse waarnemings (hoewel ietwat meer gewig is geplaas op onlangse waarnemings). By verstek, HoltWinters () maak net voorspellings vir dieselfde tydperk gedek deur ons oorspronklike tydreekse. In hierdie geval, ons oorspronklike tydreekse ingesluit reënval vir Londen vanaf 1813-1912, sodat die voorspellings is ook vir 1813-1912. In die voorbeeld hierbo, het ons die uitvoer van die HoltWinters () funksie in die lys veranderlike 8220rainseriesforecasts8221 gestoor. Die voorspellings gemaak deur HoltWinters () gestoor word in 'n vernoem element van hierdie lys veranderlike genoem 8220fitted8221, sodat ons kan hul waardes kry deur te tik: Ons kan die oorspronklike tyd reeks teen die voorspellings plot deur te tik: Die plot toon die oorspronklike tydreekse in swart, en die voorspellings as 'n rooi lyn. Die tyd reeks voorspellings is baie gladder as die tyd reeks van die oorspronklike data hier. As 'n maatstaf van die akkuraatheid van die voorspellings, kan ons die som van kwadrate van foute te bereken vir die in-monster voorspelling foute, dit wil sê die voorspelling foute vir die tydperk gedek deur ons oorspronklike tydreekse. Die som-van-kwadraat-foute word gestoor in 'n vernoem element van die lys veranderlike 8220rainseriesforecasts8221 genoem 8220SSE8221, sodat ons kan die waarde daarvan te kry deur te tik: Dit is hier die som-van-kwadraat-foute is 1828,855. Dit is algemeen in eenvoudige eksponensiële gladstryking die eerste waarde te gebruik in die tyd reeks as die aanvanklike waarde vir die vlak. Byvoorbeeld, in die tyd reeks vir reënval in Londen, die eerste waarde is 23,56 (duim) vir reënval in 1813. Jy kan die aanvanklike waarde spesifiseer vir die vlak in die HoltWinters () funksie deur gebruik te maak van die parameter 8220l. start8221. Byvoorbeeld, om voorspellings te maak met die aanvanklike waarde van die stel om 23,56 vlak, tik ons: Soos hierbo verduidelik, by verstek HoltWinters () maak net voorspellings vir die tydperk gedek deur die oorspronklike data, wat is 1813-1912 vir die reënval tydreekse. Ons kan voorspellings vir verdere tyd punte te maak deur die gebruik van die 8220forecast. HoltWinters () 8221 funksie in die R 8220forecast8221 pakket. Om die forecast. HoltWinters gebruik () funksie, moet ons eers die 8220forecast8221 R pakket te installeer (vir instruksies oor hoe om 'n R-pakket te installeer, sien Hoe om 'n R-pakket te installeer). Sodra jy die 8220forecast8221 R pakket geïnstalleer is, kan jy die 8220forecast8221 R pakket te laai deur te tik: By die gebruik van die forecast. HoltWinters () funksie, as sy eerste argument (insette), jy dit slaag die voorspelbare model wat jy reeds met behulp van die het toegerus HoltWinters () funksie. Byvoorbeeld, in die geval van die reënval tydreekse, gestoor ons die voorspelbare model gemaak met behulp van HoltWinters () in die veranderlike 8220rainseriesforecasts8221. Jy spesifiseer hoeveel verder tyd punte wat jy wil voorspellings te maak deur middel van die parameter 8220h8221 in forecast. HoltWinters (). Byvoorbeeld, om 'n voorspelling van reënval vir die jaar 1814-1820 (8 meer jaar) met behulp van forecast. HoltWinters () maak, tik ons: Die forecast. HoltWinters () funksie gee jou die voorspelling vir 'n jaar, 'n 80 voorspelling interval vir die voorspelling, en 'n 95 voorspelling interval vir die voorspelling. Byvoorbeeld, die voorspelde reën vir 1920 is sowat 24,68 duim, met 'n 95 voorspelling interval van (16.24, 33.11). Om die voorspellings wat deur forecast. HoltWinters (plot), kan ons die 8220plot. forecast gebruik () 8221 funksie: Hier is die voorspellings vir 1913-1920 is geplot as 'n blou lyn, die 80 voorspelling interval as 'n oranje skaduwee area, en die 95 voorspelling interval as 'n geel beskadig. Die 8216forecast errors8217 word bereken as die waargenome waardes minus voorspelde waardes, vir elke keer punt. Ons kan net bereken die voorspelling foute vir die tydperk gedek deur ons oorspronklike tydreeks, wat 1813-1912 vir die reënval data. Soos hierbo genoem, een maat van die akkuraatheid van die voorspelling model is die som-van-kwadraat-foute (SSE) vir die in-monster voorspelling foute. Die in-monster voorspelling foute word in die naam van element 8220residuals8221 van die lys veranderlike teruggekeer deur forecast. HoltWinters (). As die voorspelbare model nie kan verbeter word, moet daar geen korrelasie tussen voorspelling foute vir opeenvolgende voorspellings. Met ander woorde, indien daar korrelasies tussen voorspelling foute vir opeenvolgende voorspellings, is dit waarskynlik dat die eenvoudige eksponensiële gladstryking voorspellings verbeter kan word deur 'n ander voorspelling tegniek. Om uit te vind of dit die geval is vind, kan ons 'n correlogram van die in-monster voorspelling foute vir lags 1-20 verkry. Ons kan nie 'correlogram van die voorspelling foute met behulp van die 8220acf () 8221 funksie in R. Om die maksimum lag wat ons wil om te kyk na spesifiseer bereken, gebruik ons ​​die parameter 8220lag. max8221 in ACF (). Byvoorbeeld, 'n correlogram van die in-monster voorspelling foute vir die Londense reënval data vir lags 1-20 bereken, tik ons: Jy kan sien uit die voorbeeld correlogram dat die outokorrelasie op lag 3 net die betekenis perke raak. Om te toets of daar beduidende bewyse vir nie-nul korrelasies by lags 1-20, kan ons uit te voer 'n Ljung-Box toets. Dit kan gedoen word in R met behulp van die 8220Box. test () 8221, funksie. Die maksimum lag wat ons wil om te kyk na gespesifiseer deur die parameter 8220lag8221 in die funksie Box. test (). Byvoorbeeld, om te toets of daar nie-nul outokorrelasies by lags 1-20, vir die in-monster voorspelling foute na Londen reënval data, tik ons: Hier is die Ljung-Box toetsstatistiek is 17.4, en die p-waarde is 0,6 , so daar is min bewyse van nie-nul outokorrelasies in die in-monster voorspelling foute by lags 1-20. Om seker te wees dat die voorspelbare model nie kan verbeter word, is dit ook 'n goeie idee om te kyk of die voorspelling foute normaal versprei is met gemiddelde nul en konstant variansie. Om seker te maak dat die voorspelling foute konstante stryd, kan ons 'n tyd plot van die in-monster voorspelling foute maak: Die plot toon dat die in-monster voorspelling foute blyk te min of meer konstant variansie met verloop van tyd het, hoewel die grootte van die skommelinge in die begin van die tyd reeks (1820-1830) mag effens minder as wat by 'n latere datum (bv. 1840-1850) wees. Om seker te maak dat die voorspelling foute normaal versprei is met gemiddelde nul, kan ons 'n histogram van die voorspelling foute plot, met 'n oorgetrek normale kurwe wat beteken nul en dieselfde standaardafwyking as die verspreiding van voorspelling foute het. Om dit te doen, kan ons 'n R funksie 8220plotForecastErrors definieer () 8221, hieronder: Jy sal moet die funksie hierbo in R kopieer om dit te gebruik. Jy kan dan gebruik plotForecastErrors () om 'n histogram te stip (met oorgetrek normale kurwe) van die voorspelling foute vir die reënval voorspellings: Die plot toon dat die verspreiding van voorspelling foute rofweg sentreer op nul, en is min of meer normaal verdeel, hoewel dit lyk effens skeef na regs in vergelyking met 'n normale kurwe te wees. Maar die regte skeef is relatief klein, en daarom is dit geloofwaardig dat die voorspelling foute normaal versprei is met gemiddelde nul. Die Ljung-Box toets het getoon dat daar is min bewyse van nie-nul outokorrelasies in die in-monster voorspelling foute, en die verspreiding van voorspelling foute lyk normaal versprei met gemiddelde nul. Dit dui daarop dat die eenvoudige eksponensiële gladstryking metode bied 'n voldoende voorspellende model vir Londen reënval, wat waarskynlik nie kan verbeter word. Verder is die aannames wat die 80 en 95 voorspellings intervalle is gebaseer op (dat daar geen outokorrelasies in die vooruitsig foute, en die voorspelling foute normaal verdeel met gemiddelde nul en konstant variansie) is waarskynlik geldig. Holt8217s Eksponensiële Smoothing As jy 'n tydreeks wat beskryf kan word met behulp van 'n toevoeging model met 'n toenemende of dalende neiging en geen seisoenaliteit, kan jy Holt8217s eksponensiële gladstryking gebruik om kort termyn voorspellings te maak. Holt8217s eksponensiële gladstryking skat die vlak en helling by die huidige tyd punt. Smoothing word beheer deur twee parameters, Alpha vir die skatting van die vlak van die huidige tyd punt, en beta vir die skatting van die helling b van die tendens komponent by die huidige tyd punt.


No comments:

Post a Comment