Die voorbeeld kode op die blad Full Kode illustreer hoe om die bewegende gemiddelde van 'n veranderlike te bereken deur 'n hele datastel, oor die afgelope N waarnemings in 'n datastel, of oor die afgelope N waarnemings binne 'n BY-groep. Hierdie voorbeeld lêers en kode voorbeelde word verskaf deur SAS Institute Inc. soos sonder waarborge van enige aard, uitdruklik of geïmpliseer, insluitend maar nie beperk tot die geïmpliseerde waarborge van verhandelbaarheid en geskiktheid vir 'n spesifieke doel. Ontvangers erken en aanvaar dat SAS Institute nie aanspreeklik sal wees vir enige skadevergoeding hoegenaamd voortspruitend uit hul gebruik van hierdie materiaal. Daarbenewens sal SAS Institute geen ondersteuning vir die materiaal wat hierin vervat is voorsien. Hierdie voorbeeld lêers en kode voorbeelde word verskaf deur SAS Institute Inc. soos sonder waarborge van enige aard, uitdruklik of geïmpliseer, insluitend maar nie beperk tot die geïmpliseerde waarborge van verhandelbaarheid en geskiktheid vir 'n spesifieke doel. Ontvangers erken en aanvaar dat SAS Institute nie aanspreeklik sal wees vir enige skadevergoeding hoegenaamd voortspruitend uit hul gebruik van hierdie materiaal. Daarbenewens sal SAS Institute geen ondersteuning vir die materiaal wat hierin vervat is voorsien. Bereken die bewegende gemiddelde van 'n veranderlike deur 'n hele datastel, oor die afgelope N waarnemings in 'n datastel, of oor die afgelope N waarnemings binne 'n munisipale group. Autoregressive bewegende gemiddelde Fout prosesse 13 13 13 13 13 13 outoregressiewe bewegende gemiddelde fout prosesse (ARMA foute) en ander modelle wat lags van die dwaling terme kan geskat word deur gebruik te maak FIT state en gesimuleerde of voorspel met behulp LOS state. ARMA modelle vir die fout proses word dikwels gebruik vir modelle met autocorrelated residue. Die AR makro kan gebruik word om modelle met outoregressiewe fout prosesse spesifiseer. Die MA makro kan gebruik word om modelle spesifiseer met bewegende gemiddelde fout prosesse. Outoregressiewe Foute 'n model met die eerste-orde outoregressiewe foute, AR (1), het die vorm terwyl 'n AR (2) fout proses het die vorm en dies meer vir hoër-orde prosesse. Let daarop dat die e onafhanklik en identies verdeelde en het 'n verwagte waarde van 0. 'n Voorbeeld van 'n model met 'n AR (2) komponent is Jy sal hierdie model te skryf soos volg: Of anders gestel met behulp van die AR makro as bewegende gemiddelde modelle 13 A model met die eerste-orde bewegende gemiddelde foute, MA (1), het die vorm waar is identies en onafhanklik versprei met gemiddelde nul. 'N MA (2) fout proses het die vorm en dies meer vir hoër-orde prosesse. Byvoorbeeld, kan jy 'n eenvoudige lineêre regressiemodel met MA (2) bewegende gemiddelde foute as waar Ma1 en Ma2 is die bewegende gemiddelde parameters skryf. Let daarop dat RESID. Y outomaties word gedefinieer deur PROC model Let daarop dat RESID. Y is. Die ZLAG funksie moet gebruik word vir MA modelle om die rekursie van die lags afgestomp. Dit verseker dat die vertraagde foute begin by nul in die lag priming fase en nie voort ontbrekende waardes wanneer-lag priming tydperk veranderlikes ontbreek, en verseker dat die toekomstige foute is nul eerder as vermis tydens simulasie of vooruitskatting. Vir meer inligting oor die lag funksies, sien die artikel 34Lag Logic.34 Hierdie model geskryf met behulp van die MA makro is Algemene Form vir ARMA Models Die algemene ARMA (p, q) proses het die volgende vorm 'n ARMA (p, q) model kan wees gespesifiseerde soos volg waar AR Ek en MA j verteenwoordig die outoregressiewe en bewegende gemiddelde parameters vir die verskillende lags. Jy kan enige name wat jy wil vir hierdie veranderlikes gebruik, en daar is baie soortgelyk maniere wat die spesifikasie kan geskryf word. Vektor ARMA prosesse kan ook beraam met PROC model. Byvoorbeeld, kan 'n twee-veranderlike AR (1) proses vir die foute van die twee endogene veranderlikes Y1 en Y2 soos volg Konvergensie Probleme met ARMA Models ARMA modelle kan moeilik om te skat wees gespesifiseer word. As die parameter ramings is nie binne die toepaslike omvang, 'n bewegende gemiddelde modelle oorblywende terme sal eksponensieel groei. Die berekende residue vir latere waarnemings kan baie groot wees of kan oorloop. Dit kan gebeur óf omdat onbehoorlike beginspan waardes is gebruik of omdat die iterasies wegbeweeg van redelike waardes. Sorg moet gedra word in die keuse van beginspan waardes vir ARMA parameters. Begin waardes van 0,001 vir ARMA parameters gewoonlik werk as die model pas die data goed en die probleem is goed gekondisioneer. Let daarop dat 'n MA-model dikwels benader kan word deur 'n hoë orde AR model, en omgekeerd. Dit kan lei tot 'n hoë collinearity in gemengde ARMA modelle, wat op sy beurt ernstige swak kondisionering in die berekeninge en onstabiliteit van die parameter ramings kan veroorsaak. As jy konvergensie probleme te hê, terwyl die skatte van 'n model met ARMA foute prosesse, probeer om te skat in stappe. In die eerste plek gebruik 'n geskikte verklaring aan net die strukturele parameters met die ARMA parameters gehou na nul (of om vooraf redelike raming indien beskikbaar) te skat. Volgende, gebruik 'n ander FIT verklaring slegs die ARMA parameters beraam, met behulp van die strukturele parameterwaardes van die eerste termyn. Sedert die waardes van die strukturele parameters is waarskynlik naby aan hul finale skattings te wees, kan die ARMA parameterberaming nou bymekaar. Ten slotte, gebruik 'n ander FIT verklaring aan gelyktydige skattings van al die parameters te produseer. Sedert die aanvanklike waardes van die parameters is nou waarskynlik baie naby aan hul finale gesamentlike skattings te wees, moet die skattings vinnig bymekaar as die model geskik is vir die data is. AR beginvoorwaardes 13 13 13 13 13 13 13 13 13 13 Die aanvanklike lags van die fout terme van AR (p) modelle gemodelleer kan word in verskillende maniere. Die outoregressiewe fout begin metodes deur SAS / ETS prosedures is die volgende: CLS voorwaardelike kleinste kwadrate (ARIMA en model prosedures) ULS onvoorwaardelike kleinste kwadrate (AUTOREG, ARIMA, en model prosedures) ML maksimum waarskynlikheid (AUTOREG, ARIMA, en model prosedures) YW Yule-Walker (AUTOREG prosedure net) HL Hildreth-Lu, wat (enigste model prosedure) die eerste p Waarnemings verwyder Sien Hoofstuk 8. vir 'n verduideliking en bespreking van die meriete van verskeie AR (p) begin metodes. Die CLS, ULS, ML, en HT initializations uitgevoer kan word deur PROC model. Vir AR (1) foute, kan hierdie initializations geproduseer, soos uiteengesit in Tabel 14.2. Hierdie metodes is ekwivalent in groot monsters. Tabel 14.2: Initializations Uitgevoer deur PROC Model: AR (1) FOUTE MA beginvoorwaardes 13 13 13 13 13 13 Die aanvanklike lags van die fout terme van MA (Q) modelle kan ook geskoei op verskillende maniere. Die volgende bewegende gemiddelde fout begin paradigmas word ondersteun deur die ARIMA en model prosedures: ULS onvoorwaardelike kleinstekwadrate CLS voorwaardelike kleinstekwadrate ML maksimum waarskynlikheid die voorwaardelike kleinste-kwadrate metode van beraming bewegende gemiddelde fout terme is nie optimaal omdat dit ignoreer die begin probleem. Dit verminder die doeltreffendheid van die skat, hoewel hulle onbevooroordeelde bly. Die aanvanklike uitgestel residue, die uitbreiding van voor die aanvang van die data, is veronderstel om 0, hul onvoorwaardelike verwagte waarde. Dit stel 'n verskil tussen hierdie residue en die algemene kleinste-kwadrate residue vir die bewegende gemiddelde kovariansie, wat, in teenstelling met die outoregressiewe model, voortduur deur die datastel. Gewoonlik hierdie verskil konvergeer vinnig tot 0, maar vir byna noninvertible bewegende gemiddelde prosesse die konvergensie is baie stadig. Om hierdie probleem te verminder, moet jy baie data het, en die bewegende gemiddelde parameterberaming moet goed binne die omkeerbare reeks. Hierdie probleem reggestel kan word ten koste van die skryf van 'n meer komplekse program. Onvoorwaardelike kleinste-kwadrate beramings vir die MA (1) proses kan geproduseer word deur die spesifiseer van die model soos volg: Moving-gemiddelde foute kan moeilik om te skat wees. Jy moet oorweeg om 'n AR (p) benadering tot die bewegende gemiddelde proses. 'N bewegende gemiddelde proses kan gewoonlik goed benader word deur 'n outoregressiewe proses as die data is nie stryk of differenced. Die AR Makro Die SAS makro AR genereer programmering state vir PROC model vir outoregressiemodelle. Die AR makro is deel van SAS / ETS sagteware en geen spesiale opsies moet ingestel word om die makro gebruik. Die outoregressiewe proses toegepas kan word om die strukturele vergelyking foute of om die endogene reeks hulself. Die AR makro kan gebruik word vir eenveranderlike-motor regressie onbeperkte vector-motor regressie beperk vector-motor regressie. Eenveranderlike motor regressie 13 Om die foutterm van 'n vergelyking model as 'n outoregressiewe proses, gebruik die volgende stelling na die vergelyking: Byvoorbeeld, veronderstel dat Y is 'n lineêre funksie van X1 en X2, en 'n AR (2) fout. Die oproepe na AR moet kom na al die vergelykings wat die proses van toepassing op: Jy sal hierdie model soos volg skryf. Die proceding makro aanroeping, AR (y, 2), produseer die state getoon in die lys uitset in Figuur 14.49. Figuur 14.50: LYS Opsie Uitset vir 'n AR Model met lags op 1, 12, en 13 Daar is variasies op die voorwaardelike kleinste-kwadrate metode, afhangende van of waarnemings op die begin van die reeks word gebruik om 34warm up34 die AR proses. By verstek, die AR voorwaardelike kleinste-kwadrate metode gebruik al die waarnemings en aanvaar nulle vir die aanvanklike lags van outoregressiewe terme. Deur die gebruik van die opsie man, kan jy versoek dat AR gebruik die onvoorwaardelike kleinste-kwadrate (ULS) of metode maksimum-waarskynlikheid (ML) plaas. Byvoorbeeld: Besprekings van hierdie metodes word in die 34AR Aanvanklike Conditions34 vroeër in hierdie afdeling. Deur die gebruik van die MCLS N opsie, kan jy versoek dat die eerste N Waarnemings word om skattings van die aanvanklike outoregressiewe lags bereken. In hierdie geval, die ontleding begin met waarneming N 1. Byvoorbeeld: Jy kan die AR makro gebruik om 'n outoregressiewe model toe te pas om die endogene veranderlike, in plaas van om die foutterm, deur gebruik te maak van die opsie TYPEV. Byvoorbeeld, as jy wil die vyf afgelope lags van Y toe te voeg tot die vergelyking in die vorige voorbeeld, jy kan AR gebruik om die parameters te genereer en lags met behulp van die volgende stellings: Die voorafgaande stellings te genereer die uitset in Figuur 14.51. Die model Prosedure aanbieding van Saamgestel Verklaring programkode as Geperste PRED. yab x1 c x2 RESID. y PRED. y - ACTUAL. y ERROR. y PRED. y - y OLDPRED. y PRED. y yl1 ZLAG1 (y) yl2 ZLAG2 (y ) yl3 ZLAG3 (y) yl4 ZLAG4 (y) yl5 ZLAG5 (y) RESID. y PRED. y - ACTUAL. y ERROR. y PRED. y - y Figure 14.51: LYS Opsie Uitset vir 'n AR model van y Hierdie model voorspel y as 'n lineêre kombinasie van X1, X2, 'n onderskep, en die waardes van Y in die mees onlangse vyf periodes. Onbeperkte vector-motor regressie 13 Om die fout terme van 'n stel vergelykings as 'n vektor outoregressiewe proses te modelleer, gebruik die volgende vorm van die AR makro na die vergelykings: Die processname waarde is 'n naam wat jy verskaf vir AR om te gebruik in die maak van name vir die outoregressiewe parameters. Jy kan die AR makro gebruik om verskillende AR prosesse vir verskillende stelle vergelykings model deur gebruik te maak van verskillende proses name vir elke stel. Die naam proses verseker dat die veranderlike name wat uniek is. Gebruik 'n kort processname waarde vir die proses as parameter ramings geskryf moet word om 'n uitset datastel. Die AR makro probeer parameter name minder as of gelyk aan agt karakters bou, maar dit is beperk deur die lengte van naam. wat gebruik word as 'n voorvoegsel vir die AR parameter name. Die variablelist waarde is die lys van endogene veranderlikes vir die vergelykings. Byvoorbeeld, veronderstel dat foute vir vergelykings Y1, Y2, en Y3 gegenereer deur 'n tweede-orde vektor outoregressiewe proses. wat die volgende vir Y1 en soortgelyke kode vir Y2 en Y3 genereer: Slegs die voorwaardelike kleinste-kwadrate (MCLS of MCLS n) metode kan gebruik word vir vektor prosesse Jy kan die volgende stellings gebruik. Jy kan ook dieselfde vorm met beperkings wat die koëffisiëntmatriks 0 by uitgesoekte lags gebruik. Byvoorbeeld, die state van toepassing 'n derde-orde vektor proses om die vergelyking foute met al die koëffisiënte op lag 2 beperk tot 0 en met die koëffisiënte op lags 1 en 3 onbeperkte. Jy kan die drie reekse Y1-Y3 as 'n vektor outoregressiewe proses model in die veranderlikes in plaas van in die foute deur die gebruik van die opsie TYPEV. As jy wil 'n model Y1-Y3 as 'n funksie van die verlede waardes van Y1-Y3 en 'n paar eksogene veranderlikes of konstantes, kan jy AR gebruik om die state vir die lag terme te genereer. Skryf 'n vergelyking vir elke veranderlike vir die nonautoregressive deel van die model, en dan bel AR met die opsie TYPEV. Byvoorbeeld, kan die nonautoregressive deel van die model 'n funksie van eksogene veranderlikes wees, of dit kan onderskep parameters wees. As daar geen eksterne komponente om die vector-motor regressie model, insluitende geen afsnitte, dan wys nul tot elk van die veranderlikes. Daar moet 'n opdrag aan elkeen van die veranderlikes voor AR genoem. Hierdie voorbeeld modelle die vektor Y (Y1 Y2 Y3) as 'n lineêre funksie net van sy waarde in die vorige twee periodes en 'n wit geraas fout vektor. Die model het 18 (3 keer 3 3 keer 3) parameters. Sintaksis van die AR Makro Daar is twee gevalle van die sintaksis van die AR makro. Die eerste het die algemene vorm naam spesifiseer 'n voorvoegsel vir AR om te gebruik in die bou van name van veranderlikes wat nodig is om die AR proses te definieer. As die endolist nie gespesifiseer word nie, die endogene lys standaard te noem. wat moet die naam van die vergelyking waarna die AR fout proses toegepas moet word nie. Die naam mag nie meer as agt karakters. nlag is aan die orde van die AR proses. endolist spesifiseer die lys van vergelykings waarna die AR proses toegepas moet word. Indien meer as een naam word gegee, is 'n onbeperkte vektor proses geskep met die strukturele residue van al die vergelykings ingesluit as voorspellers in elk van die vergelykings. As nie gespesifiseer, verstek na endolist naam. laglist spesifiseer die lys van sloerings waarteen die AR terme is om by te voeg. Die koëffisiënte van die terme op lags nie gelys is ingestel op 0. Al die genoteerde lags moet minder as of gelyk aan nlag wees. en daar was geen duplikate moet wees. As nie gespesifiseer, die laglist standaard vir alle lags 1 deur nlag. M metode spesifiseer die skatting metode om te implementeer. Geldige waardes van M is CLS (voorwaardelike kleinste-kwadrate beramings), ULS (onvoorwaardelike kleinste-kwadrate beramings), en ML (maksimum-waarskynlikheid ramings). MCLS is die standaard. Slegs MCLS toegelaat wanneer meer as een vergelyking gespesifiseer. Die ULS en ML metodes word nie ondersteun nie vir vektor AR modelle deur AR. TYPEV bepaal dat die AR proses is self toegepas moet word om die endogene veranderlikes in plaas van om die strukturele residue van die vergelykings. Beperk vector-motor regressie 13 13 13 13 Jy kan beheer wat parameters ingesluit in die proses, die beperking van die parameters wat jy nie sluit aan 0. In die eerste plek gebruik AR met die opsie eerbiedig die veranderlike lys verklaar en die dimensie van die proses te definieer. Dan gebruik addisionele AR oproepe na terme vir geselekteerde vergelykings met geselekteerde veranderlikes by sekere lags genereer. Byvoorbeeld, die fout vergelykings geproduseer is Hierdie model stel dat die foute vir Y1 afhang van die foute van beide Y1 en Y2 (maar nie Y3) by beide lags 1 en 2, en dat die foute vir Y2 en Y3 afhang van die vorige foute vir al drie veranderlikes, maar slegs op lag 1. AR Makro Sintaksis vir Beperkte vector AR 'n alternatiewe gebruik van AR toegelaat word om beperkings op 'n vektor AR proses te lê deur AR 'n paar keer 'n beroep op verskillende AR terme spesifiseer en loop vir verskillende vergelykings. Die eerste oproep het die algemene vorm naam spesifiseer 'n voorvoegsel vir AR om te gebruik in die bou van name van veranderlikes wat nodig is om die vektor AR proses te definieer. nlag spesifiseer die einde van die AR proses. endolist spesifiseer die lys van vergelykings waarna die AR proses toegepas moet word. DEFER bepaal dat AR is nie om die AR proses te genereer, maar is om te wag vir verdere inligting wat in later AR oproepe vir die gelyknamige waarde. Die daaropvolgende oproepe het die algemene vorm naam is dieselfde as in die eerste oproep. eqlist spesifiseer die lys van vergelykings waarna die spesifikasies in hierdie AR oproep is wat toegepas moet word. Slegs name wat in die endolist waarde van die eerste oproep vir die naam waarde kan verskyn in die lys van vergelykings in eqlist. varlist spesifiseer die lys van vergelykings wie uitgestel strukturele residue is om ingesluit te word as voorspellers in die vergelykings in eqlist. Slegs name in die endolist van die eerste oproep vir die naam waarde kan verskyn in varlist. As nie gespesifiseer, verstek na varlist endolist. laglist spesifiseer die lys van sloerings waarteen die AR terme is om by te voeg. Die koëffisiënte van die terme op lags nie gelys is ingestel op 0. Al die genoteerde lags moet minder as of gelyk aan die waarde van nlag wees. en daar was geen duplikate moet wees. As nie gespesifiseer, verstek laglist al lags 1 deur nlag. Die MA Makro 13 Die SAS makro MA genereer programmering state vir PROC model vir bewegende gemiddelde modelle. Die MA makro is deel van SAS / ETS sagteware en geen spesiale opsies is nodig om die makro gebruik. Die bewegende gemiddelde fout proses toegepas kan word om die strukturele vergelyking foute. Die sintaksis van die MA makro is dieselfde as die AR makro behalwe daar is geen argument plekke. 13 Wanneer jy die MA en AR makros gekombineer, moet die MA makro die AR makro volg. Die volgende SAS / IML state te produseer 'n ARMA (1, (1 3)) fout proses en stoor dit in die datastel MADAT2. Die volgende PROC MODEL state word gebruik om die parameters van hierdie model gebruik te maak van maksimum waarskynlikheid fout struktuur skat: Die skat van die parameters wat deur hierdie lopie word in Figuur 14.52. Maksimum waarskynlikheid ARMA (1, (1 3)) Figuur 14.52: Beramings van 'n ARMA (1, (1 3)) Proses Sintaksis van die MA Makro Daar is twee gevalle van die sintaksis vir die MA makro. Die eerste het die algemene vorm naam spesifiseer 'n voorvoegsel vir MA om te gebruik in die bou van name van veranderlikes wat nodig is om die MA proses te definieer en is die standaard endolist. nlag is aan die orde van die MA-proses. endolist spesifiseer die vergelykings waarna die MA proses toegepas moet word. Indien meer as een naam word gegee, is CLS skatting gebruik vir die vektor proses. laglist spesifiseer die lags waarteen die MA terme is om by te voeg. Al die genoteerde lags moet minder as of gelyk aan nlag wees. en daar was geen duplikate moet wees. As nie gespesifiseer, die laglist standaard vir alle lags 1 deur nlag. M metode spesifiseer die skatting metode om te implementeer. Geldige waardes van M is CLS (voorwaardelike kleinste-kwadrate beramings), ULS (onvoorwaardelike kleinste-kwadrate beramings), en ML (maksimum-waarskynlikheid ramings). MCLS is die standaard. Slegs MCLS toegelaat wanneer meer as een vergelyking gespesifiseer op die endolist. MA Makro Sintaksis vir Beperkte Vector bewegende gemiddelde 13 'n Alternatiewe gebruik van MA toegelaat word om beperkings op 'n vektor MA proses te lê deur 'n paar keer 'n beroep MA verskillende MA terme spesifiseer en loop vir verskillende vergelykings. Die eerste oproep het die algemene vorm naam spesifiseer 'n voorvoegsel vir MA om te gebruik in die bou van name van veranderlikes wat nodig is om die vektor MA proses te definieer. nlag spesifiseer die einde van die MA-proses. endolist spesifiseer die lys van vergelykings waarna die MA proses toegepas moet word. DEFER bepaal dat MA is nie tot die MA proses te genereer, maar is om te wag vir verdere inligting wat in later MA oproepe vir die gelyknamige waarde. Die daaropvolgende oproepe het die algemene vorm naam is dieselfde as in die eerste oproep. eqlist spesifiseer die lys van vergelykings waarna die spesifikasies in hierdie MA oproep is wat toegepas moet word. varlist spesifiseer die lys van vergelykings wie uitgestel strukturele residue is om ingesluit te word as voorspellers in die vergelykings in eqlist. laglist spesifiseer die lys van sloerings waarteen die MA terme is om added. Autoregressive bewegende gemiddelde fout prosesse (ARMA foute) en ander modelle wat die volgende behels lags van die dwaling terme kan geskat word deur die gebruik van FIT state en gesimuleerde of voorspel deur gebruik te maak van LOS state wees . ARMA modelle vir die fout proses word dikwels gebruik vir modelle met autocorrelated residue. Die AR makro kan gebruik word om modelle met outoregressiewe fout prosesse spesifiseer. Die MA makro kan gebruik word om modelle spesifiseer met bewegende gemiddelde fout prosesse. Outoregressiewe Foute 'n model met die eerste-orde outoregressiewe foute, AR (1), het die vorm terwyl 'n AR (2) fout proses het die vorm en dies meer vir hoër-orde prosesse. Let daarop dat die e onafhanklik en identies verdeelde en het 'n verwagte waarde van 0. 'n Voorbeeld van 'n model met 'n AR (2) komponent is en dies meer vir hoër-orde prosesse. Byvoorbeeld, kan jy 'n eenvoudige lineêre regressiemodel met MA (2) skryf bewegende gemiddelde foute as waar Ma1 en Ma2 is die bewegende gemiddelde parameters. Let daarop dat RESID. Y outomaties word gedefinieer deur PROC model as die ZLAG funksie moet gebruik word vir MA modelle om die rekursie van die lags afgestomp. Dit verseker dat die vertraagde foute begin by nul in die lag priming fase en nie voort ontbrekende waardes wanneer-lag priming tydperk veranderlikes ontbreek, en dit verseker dat die toekomstige foute is nul eerder as vermis tydens simulasie of vooruitskatting. Vir meer besonderhede oor die lag funksies, sien die artikel Lag logika. Hierdie model geskryf met behulp van die MA makro is soos volg: Algemene vorm vir ARMA Models Die algemene ARMA (p, q) proses het die volgende vorm 'n ARMA (p, q) model kan gespesifiseer word soos volg: waar AR Ek en MA j verteenwoordig die outoregressiewe en bewegende gemiddelde parameters vir die verskillende lags. Jy kan enige name wat jy wil vir hierdie veranderlikes gebruik, en daar is baie soortgelyk maniere wat die spesifikasie kan geskryf word. Vektor ARMA prosesse kan ook beraam met PROC model. Konvergensie Probleme met ARMA Models ARMA modelle kan moeilik om te skat wees: Byvoorbeeld, kan 'n twee-veranderlike AR (1) proses vir die foute van die twee endogene veranderlikes Y1 en Y2 soos volg gespesifiseer word. As die parameter ramings is nie binne die toepaslike omvang, 'n bewegende gemiddelde modelle oorblywende terme groei eksponensieel. Die berekende residue vir latere waarnemings kan baie groot wees of kan oorloop. Dit kan gebeur óf omdat onbehoorlike beginspan waardes is gebruik of omdat die iterasies wegbeweeg van redelike waardes. Sorg moet gedra word in die keuse van beginspan waardes vir ARMA parameters. Begin waardes van 0.001 vir ARMA parameters gewoonlik werk as die model pas die data goed en die probleem is goed gekondisioneer. Let daarop dat 'n MA-model dikwels benader kan word deur 'n hoë-orde AR model, en omgekeerd. Dit kan lei tot 'n hoë collinearity in gemengde ARMA modelle, wat op sy beurt ernstige swak kondisionering in die berekeninge en onstabiliteit van die parameter ramings kan veroorsaak. As jy konvergensie probleme te hê, terwyl die skatte van 'n model met ARMA foute prosesse, probeer om te skat in stappe. In die eerste plek gebruik 'n geskikte verklaring aan net die strukturele parameters met die ARMA parameters gehou na nul (of om vooraf redelike raming indien beskikbaar) te skat. Volgende, gebruik 'n ander FIT verklaring slegs die ARMA parameters beraam, met behulp van die strukturele parameterwaardes van die eerste termyn. Sedert die waardes van die strukturele parameters is waarskynlik naby aan hul finale skattings te wees, kan die ARMA parameterberaming nou bymekaar. Ten slotte, gebruik 'n ander FIT verklaring aan gelyktydige skattings van al die parameters te produseer. Sedert die aanvanklike waardes van die parameters is nou waarskynlik baie naby aan hul finale gesamentlike skattings te wees, moet die skattings vinnig bymekaar as die model geskik is vir die data is. AR beginvoorwaardes Die aanvanklike lags van die fout terme van AR (p) modelle gemodelleer kan word in verskillende maniere. Die outoregressiewe fout begin metodes deur SAS / ETS prosedures is die volgende: voorwaardelike kleinste kwadrate (ARIMA en model prosedures) onvoorwaardelike kleinste kwadrate (AUTOREG, ARIMA, en model prosedures) die maksimum waarskynlikheid (AUTOREG, ARIMA, en model prosedures) Yule-Walker (AUTOREG prosedure net) Hildreth-Lu, wat (enigste model prosedure) die eerste p Waarnemings verwyder Sien Hoofstuk 8, die AUTOREG prosedure, vir 'n verduideliking en bespreking van die meriete van verskeie AR (p) begin metodes. Die CLS, ULS, ML, en HT initializations uitgevoer kan word deur PROC model. Vir AR (1) foute, kan hierdie initializations geproduseer, soos uiteengesit in Tabel 18.2. Hierdie metodes is ekwivalent in groot monsters. Table 18.2 Initializations Uitgevoer deur PROC Model: AR (1) FOUTE Die aanvanklike lags van die fout terme van MA (Q) modelle kan ook geskoei op verskillende maniere. Die volgende bewegende gemiddelde fout start-up paradigmas word ondersteun deur die ARIMA en model prosedures: onvoorwaardelike kleinstekwadrate voorwaardelike kleinstekwadrate die voorwaardelike kleinste kwadrate metode van beraming bewegende gemiddelde fout terme is nie optimaal omdat dit die aanloop probleem ignoreer. Dit verminder die doeltreffendheid van die skat, hoewel hulle onbevooroordeelde bly. Die aanvanklike uitgestel residue, die uitbreiding van voor die aanvang van die data, is veronderstel om 0, hul onvoorwaardelike verwagte waarde. Dit stel 'n verskil tussen hierdie residue en die algemene kleinstekwadrate residue vir die bewegende gemiddelde kovariansie, wat, in teenstelling met die outoregressiewe model, voortduur deur die datastel. Gewoonlik hierdie verskil konvergeer vinnig tot 0, maar vir byna noninvertible bewegende gemiddelde prosesse die konvergensie is baie stadig. Om hierdie probleem te verminder, moet jy baie data het, en die bewegende gemiddelde parameterberaming moet goed binne die omkeerbare reeks. Hierdie probleem reggestel kan word ten koste van die skryf van 'n meer komplekse program. Onvoorwaardelike kleinste kwadrate beramings vir die MA (1) proses kan geproduseer word deur die spesifiseer van die model soos volg: Moving-gemiddelde foute kan moeilik om te skat wees. Jy moet oorweeg om 'n AR (p) benadering tot die bewegende gemiddelde proses. 'N bewegende gemiddelde proses kan gewoonlik goed benader word deur 'n outoregressiewe proses as die data is nie stryk of differenced. Die AR Makro Die SAS makro AR genereer programmering state vir PROC model vir outoregressiemodelle. Die AR makro is deel van SAS / ETS sagteware, en geen spesiale opsies moet ingestel word om die makro gebruik. Die outoregressiewe proses toegepas kan word om die strukturele vergelyking foute of om die endogene reeks hulself. Die AR makro kan gebruik word vir die volgende tipes motor regressie: onbeperkte vector-motor regressie beperk vector-motor regressie Eenveranderlike motor regressie Om die foutterm van 'n vergelyking model as 'n outoregressiewe proses, gebruik die volgende stelling na die vergelyking: Byvoorbeeld, veronderstel dat Y is 'n lineêre funksie van x1, x2, en 'n AR (2) fout. Die oproepe na AR moet kom na al die vergelykings wat die proses van toepassing op: Jy sal hierdie model soos volg skryf. Die voorafgaande makro aanroeping, AR (y, 2), produseer die state getoon in die lys uitset in Figuur 18.58. Figuur 18.58 LYS Opsie Uitset vir 'n AR (2) Model Die pred voorafgegaan veranderlikes is tydelik program veranderlikes gebruik sodat die lags van die residue is die korrekte residue en nie dié geherdefinieer deur hierdie vergelyking. Let daarop dat hierdie is gelykstaande aan die state uitdruklik in die artikel Algemene Form vir ARMA Models geskryf. Jy kan ook die outoregressiewe parameters aan nul beperk by uitgesoekte lags. Byvoorbeeld, as jy outoregressiewe parameters wou by lags 1, 12, en 13, kan jy die volgende stellings gebruik: Hierdie state genereer die uitset in Figuur 18,59. Figuur 18,59 LYS Opsie Uitset vir 'n AR Model met lags op 1, 12, en 13 Die model Prosedure aanbieding van Saamgestel programkode Verklaring Geperste PRED. yab x1 c x2 RESID. y PRED. y - ACTUAL. y ERROR. y pred. y - y OLDPRED. y PRED. y yl1 ZLAG1 (y - PREDy) yl12 ZLAG12 (y - PREDy) yl13 ZLAG13 (y - PREDy) RESID. y PRED. y - ACTUAL. y ERROR. y PRED. y - y Daar is variasies op die voorwaardelike kleinste kwadrate metode, afhangende van of waarnemings op die begin van die reeks word gebruik om op te warm die AR proses. By verstek, die AR voorwaardelike kleinste kwadrate metode gebruik al die waarnemings en aanvaar nulle vir die aanvanklike lags van outoregressiewe terme. Deur die gebruik van die opsie man, kan jy versoek dat AR gebruik die onvoorwaardelike kleinste kwadrate (ULS) of metode maksimum-waarskynlikheid (ML) plaas. Byvoorbeeld, is Besprekings van hierdie metodes wat in die artikel AR beginvoorwaardes. Deur die gebruik van die MCLS N opsie, kan jy versoek dat die eerste N Waarnemings word om skattings van die aanvanklike outoregressiewe lags bereken. In hierdie geval, die ontleding begin met waarneming N 1. Byvoorbeeld: Jy kan die AR makro gebruik om 'n outoregressiewe model toe te pas om die endogene veranderlike, in plaas van om die foutterm, deur gebruik te maak van die opsie TYPEV. Byvoorbeeld, as jy wil die vyf afgelope lags van Y toe te voeg tot die vergelyking in die vorige voorbeeld, jy kan AR gebruik om die parameters te genereer en loop deur die gebruik van die volgende stellings: Die voorafgaande stellings te genereer die uitset in Figuur 18.60. Figuur 18.60 LYS Opsie Uitset vir 'n AR model van Y Hierdie model voorspel Y as 'n lineêre kombinasie van X1, X2, 'n onderskep, en die waardes van Y in die mees onlangse vyf periodes. Onbeperkte vector-motor regressie Om die fout terme van 'n stel vergelykings as 'n vektor outoregressiewe proses te modelleer, gebruik die volgende vorm van die AR makro na die vergelykings: Die processname waarde is 'n naam wat jy verskaf vir AR om te gebruik in die maak van name vir die outoregressiewe grense. Jy kan die AR makro gebruik om verskillende AR prosesse vir verskillende stelle vergelykings model deur gebruik te maak van verskillende proses name vir elke stel. Die naam proses verseker dat die veranderlike name wat uniek is. Gebruik 'n kort processname waarde vir die proses as parameter ramings geskryf moet word om 'n uitset datastel. Die AR makro probeer parameter name minder as of gelyk aan agt karakters bou, maar dit is beperk deur die lengte van processname. wat gebruik word as 'n voorvoegsel vir die AR parameter name. Die variablelist waarde is die lys van endogene veranderlikes vir die vergelykings. Byvoorbeeld, veronderstel dat foute vir vergelykings Y1, Y2, en Y3 gegenereer deur 'n tweede-orde vektor outoregressiewe proses. wat die volgende vir Y1 en soortgelyke kode vir Y2 en Y3 genereer: Slegs die voorwaardelike kleinste kwadrate (MCLS of MCLS n) metode kan gebruik word vir vektor prosesse Jy kan die volgende stellings gebruik. Jy kan ook dieselfde vorm met beperkings wat die koëffisiëntmatriks 0 by uitgesoekte lags gebruik. Byvoorbeeld, die volgende stellings pas 'n derde-orde vektor proses om die vergelyking foute met al die koëffisiënte op lag 2 beperk tot 0 en met die koëffisiënte op lags 1 en 3 onbeperkte: Jy kan die drie reekse Y1Y3 as 'n vektor outoregressiewe proses te modelleer in die veranderlikes in plaas van in die foute deur die gebruik van die opsie TYPEV. As jy wil Y1Y3 model as 'n funksie van die verlede waardes van Y1Y3 en 'n paar eksogene veranderlikes of konstantes, kan jy AR gebruik om die state vir die lag terme te genereer. Skryf 'n vergelyking vir elke veranderlike vir die nonautoregressive deel van die model, en dan bel AR met die opsie TYPEV. Byvoorbeeld, kan die nonautoregressive deel van die model 'n funksie van eksogene veranderlikes wees, of dit kan onderskep parameters wees. As daar geen eksterne komponente om die vector-motor regressie model, insluitende geen afsnitte, dan wys nul tot elk van die veranderlikes. Daar moet 'n opdrag aan elkeen van die veranderlikes voor AR genoem. Hierdie voorbeeld modelle die vektor Y (Y1 Y2 Y3) as 'n lineêre funksie net van sy waarde in die vorige twee periodes en 'n wit geraas fout vektor. Die model het 18 (3 3 3 3) parameters. Sintaksis van die AR Makro Daar is twee gevalle van die sintaksis van die AR makro. Wanneer beperkings op 'n vektor AR proses nie nodig, die sintaksis van die AR makro het die algemene vorm spesifiseer 'n voorvoegsel vir AR om te gebruik in die bou van name van veranderlikes wat nodig is om die AR proses te definieer. As die endolist nie gespesifiseer word nie, die endogene lys standaard te noem. wat moet die naam van die vergelyking waarna die AR fout proses toegepas moet word nie. Die naam mag nie meer as 32 karakters. is aan die orde van die AR proses. spesifiseer die lys van vergelykings waarna die AR proses toegepas moet word. Indien meer as een naam word gegee, is 'n onbeperkte vektor proses geskep met die strukturele residue van al die vergelykings ingesluit as voorspellers in elk van die vergelykings. As nie gespesifiseer, verstek na endolist naam. spesifiseer die lys van sloerings waarteen die AR terme is om by te voeg. Die koëffisiënte van die terme op lags nie gelys is ingestel op 0. Al die genoteerde lags moet minder as of gelyk aan nlag wees. en daar was geen duplikate moet wees. As nie gespesifiseer, die laglist standaard vir alle lags 1 deur nlag. spesifiseer die skatting metode om te implementeer. Geldige waardes van M is CLS (voorwaardelike kleinste kwadrate beramings), ULS (onvoorwaardelike kleinste kwadrate beramings), en ML (maksimum waarskynlikheid ramings). MCLS is die standaard. Slegs MCLS toegelaat wanneer meer as een vergelyking gespesifiseer. Die ULS en ML metodes word nie ondersteun nie vir vektor AR modelle deur AR. bepaal dat die AR proses toegepas moet word om die endogene veranderlikes hulself in plaas van om die strukturele residue van die vergelykings. Beperkte vector-motor regressie Jy kan beheer wat parameters ingesluit in die proses, die beperking van tot 0 diegene parameters wat jy nie in te sluit. In die eerste plek gebruik AR met die opsie eerbiedig die veranderlike lys verklaar en die dimensie van die proses te definieer. Dan gebruik addisionele AR oproepe na terme vir geselekteerde vergelykings met geselekteerde veranderlikes by sekere lags genereer. Byvoorbeeld, die fout vergelykings geproduseer is soos volg: Hierdie model stel dat die foute vir Y1 afhang van die foute van beide Y1 en Y2 (maar nie Y3) by beide lags 1 en 2, en dat die foute vir Y2 en Y3 afhang die vorige foute vir al drie veranderlikes, maar slegs op lag 1. AR Makro Sintaksis vir Beperkte vector AR 'n alternatiewe gebruik van AR toegelaat word om beperkings op 'n vektor AR proses te lê deur AR 'n paar keer 'n beroep op verskillende AR terme spesifiseer en loop vir verskillende vergelykings. Die eerste oproep het die algemene vorm spesifiseer 'n voorvoegsel vir AR om te gebruik in die bou van name van veranderlikes wat nodig is om die vektor AR proses te definieer. spesifiseer die einde van die AR proses. spesifiseer die lys van vergelykings waarna die AR proses toegepas moet word. bepaal dat AR is nie om die AR proses te genereer, maar is om te wag vir verdere inligting wat in later AR oproepe vir die gelyknamige waarde. Die daaropvolgende oproepe het die algemene vorm is dieselfde as in die eerste oproep. spesifiseer die lys van vergelykings waarna die spesifikasies in hierdie AR oproep is wat toegepas moet word. Slegs name wat in die endolist waarde van die eerste oproep vir die naam waarde kan verskyn in die lys van vergelykings in eqlist. spesifiseer die lys van vergelykings wie uitgestel strukturele residue is om ingesluit te word as voorspellers in die vergelykings in eqlist. Slegs name in die endolist van die eerste oproep vir die naam waarde kan verskyn in varlist. As nie gespesifiseer, verstek na varlist endolist. spesifiseer die lys van sloerings waarteen die AR terme is om by te voeg. Die koëffisiënte van die terme op lags nie gelys is ingestel op 0. Al die genoteerde lags moet minder as of gelyk aan die waarde van nlag wees. en daar was geen duplikate moet wees. As nie gespesifiseer, verstek laglist al lags 1 deur nlag. Die MA Makro Die SAS makro MA genereer programmering state vir PROC model vir die verskuiwing-gemiddelde modelle. Die MA makro is deel van SAS / ETS sagteware, en geen spesiale opsies is nodig om die makro gebruik. Die bewegende gemiddelde fout proses toegepas kan word om die strukturele vergelyking foute. Die sintaksis van die MA makro is dieselfde as die AR makro behalwe daar is geen argument plekke. Wanneer jy die MA en AR makros gekombineer, moet die MA makro die AR makro volg. Die volgende SAS / IML state te produseer 'n ARMA (1, (1 3)) fout proses en stoor dit in die datastel MADAT2. Die volgende PROC MODEL state word gebruik om die parameters van hierdie model skat met behulp van maksimum waarskynlikheid fout struktuur: die skat van die parameters wat deur hierdie lopie word in Figuur 18.61. Figuur 18.61 Beramings van 'n ARMA (1, (1 3)) Proses Daar is twee gevalle van die sintaksis vir die MA makro. Wanneer beperkings op 'n vektor MA proses nie nodig, die sintaksis van die MA makro het die algemene vorm spesifiseer 'n voorvoegsel vir MA om te gebruik in die bou van name van veranderlikes wat nodig is om die MA proses te definieer en is die standaard endolist. is aan die orde van die MA-proses. spesifiseer die vergelykings waarna die MA proses toegepas moet word. Indien meer as een naam word gegee, is CLS skatting gebruik vir die vektor proses. spesifiseer die lags waarteen die MA terme is om by te voeg. Al die genoteerde lags moet minder as of gelyk aan nlag wees. en daar was geen duplikate moet wees. As nie gespesifiseer, die laglist standaard vir alle lags 1 deur nlag. spesifiseer die skatting metode om te implementeer. Geldige waardes van M is CLS (voorwaardelike kleinste kwadrate beramings), ULS (onvoorwaardelike kleinste kwadrate beramings), en ML (maksimum waarskynlikheid ramings). MCLS is die standaard. Slegs MCLS toegelaat wanneer meer as een vergelyking wat in die endolist. MA Makro Sintaksis vir Beperkte Vector bewegende gemiddeldes 'n Alternatiewe gebruik van MA toegelaat word om beperkings op 'n vektor MA proses te lê deur 'n paar keer 'n beroep MA verskillende MA terme spesifiseer en loop vir verskillende vergelykings. Die eerste oproep het die algemene vorm spesifiseer 'n voorvoegsel vir MA om te gebruik in die bou van name van veranderlikes wat nodig is om die vektor MA proses te definieer. spesifiseer die einde van die MA-proses. spesifiseer die lys van vergelykings waarna die MA proses toegepas moet word. bepaal dat MA is nie tot die MA proses te genereer, maar is om te wag vir verdere inligting wat in later MA oproepe vir die gelyknamige waarde. Die daaropvolgende oproepe het die algemene vorm is dieselfde as in die eerste oproep. spesifiseer die lys van vergelykings waarna die spesifikasies in hierdie MA oproep is wat toegepas moet word. spesifiseer die lys van vergelykings wie uitgestel strukturele residue is om ingesluit te word as voorspellers in die vergelykings in eqlist. spesifiseer die lys van sloerings waarteen die MA terme moet word added. Moving Gemiddelde Hierdie voorbeeld leer jy hoe om die bewegende gemiddelde van 'n tydreeks in Excel te bereken. 'N bewegende avearge gebruik te stryk onreëlmatighede (pieke en dale) om maklik tendense herken. 1. In die eerste plek kan 'n blik op ons tyd reeks. 2. Klik op die blad Data, kliek Data-analise. Nota: cant vind die Data-analise knoppie Klik hier om die analise ToolPak add-in te laai. 3. Kies bewegende gemiddelde en klik op OK. 4. Klik op die insette Range boks en kies die reeks B2: M2. 5. Klik op die boks interval en tik 6. 6. Klik in die uitset Range boks en kies sel B3. 8. Teken 'n grafiek van hierdie waardes. Verduideliking: omdat ons die interval stel om 6, die bewegende gemiddelde is die gemiddeld van die vorige 5 datapunte en die huidige data punt. As gevolg hiervan, is pieke en dale stryk uit. Die grafiek toon 'n toenemende tendens. Excel kan nie bereken die bewegende gemiddelde vir die eerste 5 datapunte, want daar is nie genoeg vorige datapunte. 9. Herhaal stappe 2 tot 8 vir interval 2 en interval 4. Gevolgtrekking: Hoe groter die interval, hoe meer die pieke en dale is glad nie. Hoe kleiner die interval, hoe nader die bewegende gemiddeldes is om die werklike data punte. Hou jy van hierdie gratis webwerf Deel asseblief hierdie bladsy op GoogleIn hierdie post, Ek wys 'n truuk te doen bewegende gemiddelde berekening (kan uitgebrei word na ander operasies waarby windows funksies) wat super vinnig. Dikwels moet SAS ontleders uit te voer bewegende gemiddelde berekening en daar is verskeie opsies wat deur die volgorde van voorkeur: 1. PROC brei 2. DATA STAP 3. PROC SQL Maar baie plekke kan nie gelisensieer SAS / ETS te gebruik PROC uit te brei en te doen bewegende gemiddelde in Data stap vereis 'n paar kodering en is fout geneig. PROC SQL 'n natuurlike keuse vir junior programmeerders en in baie besigheid gevalle die enigste oplossing, maar SAS39s PROC SQL ontbreek windows funksies wat beskikbaar is in baie DBs te fasiliteer bewegende gemiddelde berekening is. Een tegniek mense gewoonlik gebruik is CROSS te sluit, wat baie duur en nie 'n werkbare oplossing vir selfs medium grootte datastel. In hierdie post, ek het 'n truuk te doen bewegende gemiddelde berekening wys (kan uitgebrei word na ander operasies waarby windows funksies) wat super vinnig. Oorweeg die eenvoudigste bewegende gemiddelde berekening waar die agterste K waarnemings word by die berekening ingesluit, naamlik MA (K), Hier het ons K5. Ons genereer eers 'n 20 OBS steekproefdata, waar veranderlike ID is om gebruik te word vir windows en die veranderlike X is om gebruik te word in MA berekening en dan pas ons die standaard CROSS vat om eers die gevolglike data, Nie-Gegroepeer ondersoek, net om te verstaan hoe om die data struktuur hefboom. Van die gevolglike datastel, is dit moeilik om 'n idee te kry, let39s nou sorteer quotbidquot kolom in hierdie datastel: Van hierdie gesorteer data, is dit duidelik dat ons eintlik don39t het om oor te steek Neem deel aan die hele oorspronklike datastel, maar in plaas daarvan, kan ons 'n quotoperationquot datastel wat die verskil waarde bevat genereer, en laat die oorspronklike datastel CROSS vat met hierdie baie kleiner quotoperationquot datastel, en al die data wat ons nodig het om te gebruik vir MA berekening sal daar wees. let39s Doen nou dit: CROSS JOIN oorspronklike data met quotoperationquot data, sorteer (a. idops), wat eintlik quotbid39 in gesorteerde datastel Let daarop dat bogenoemde kode, is dit nodig om byl vermeerder het deur b. weight sodat die data kan inter-leaved, anders dieselfde X waarde van die oorspronklike tabel sal wees uitset en MA berekening sal misluk. Die eksplisiete gewig veranderlike eintlik voeg in meer buigsaamheid om die hele MA berekening. Terwyl die opstel van dit te wees 1 vir alle OBS gevolg in 'n eenvoudige MA berekening, toewys verskillende gewigte sal help om meer komplekse MA rekenaar op te los, soos te gee verdere waarnemings minder gewig vir 'n verrotte MA. As verskillende K parameter in MA (K) berekeninge vereis, hoef slegs die werking datastel opgedateer wat triviale taak. Nou is die werklike kode sjabloon vir MA (K) berekening sal wees: Met hierdie nuwe metode, dit is interessant om dit te vergelyk met die duur self CROSS JOIN asook om Proc uit te brei. Op my werkstasie (Intel i5 3.8Ghz, 32GB geheue, 1TB 72K HDD), self CROSS JOIN is onbetaalbaar lang loop tyd (indien data is groot), terwyl die nuwe metode gebruik net 2X soveel tyd as PROC uit te brei, sal die tyd verbruik is triviale vergelyk om self CROSS aan te sluit. Tyd verbruik hieronder getoon is in quotsecondquot. Hier is die kode lesers kan hardloop en vergelyk julle. Posted 10 Mei 2015 deur Liang Xie SAS Programmering vir data-ontginning
No comments:
Post a Comment