Zeitreihenanalyse tsa. Enthält Modellklassen und Funktionen, die für die Zeitreihenanalyse nützlich sind. Dazu gehören derzeit univariate autoregressive Modelle AR, Vektor autoregressive Modelle VAR und univariate autoregressive gleitende Mittelmodelle ARMA Es enthält auch deskriptive Statistiken für Zeitreihen, zB Autokorrelation, partielle Autokorrelationsfunktion und Periodogramm, Sowie die entsprechenden theoretischen Eigenschaften von ARMA oder verwandten Prozessen Es gibt auch Methoden, um mit autoregressiven und gleitenden durchschnittlichen Lag-Polynomen zu arbeiten. Darüber hinaus sind verwandte statistische Tests und einige nützliche Helfer-Funktionen verfügbar. Estimation erfolgt entweder durch exakte oder bedingte Maximum Likelihood oder Bedingte kleinste Quadrate, entweder mit Kalman Filter oder direkte Filter. Zur Zeit müssen Funktionen und Klassen aus dem entsprechenden Modul importiert werden, aber die Hauptklassen werden im Namespace zur Verfügung gestellt Die Modulstruktur ist innerhalb is. stattools empirische Eigenschaften und Tests , Acf, pacf, granger-causality, adf Einheit Wurzeltest, ljung-box-Test und andere. armodel univariate autoregressive Prozess, Schätzung mit bedingten und genaue maximale Wahrscheinlichkeit und bedingte kleinste Quadrate. arimamodel univariate ARMA-Prozess, Schätzung mit bedingten und exakten Maximum Wahrscheinlichkeit und bedingte kleinste Quadrate. vectorar, var Vektor autoregressive Prozess VAR Schätzmodelle, Impulsantwortanalyse, Prognosefehler Varianzzerlegungen und Datenvisualisierung tools. kalmanf Schätzungsklassen für ARMA und andere Modelle mit exaktem MLE mit Kalman Filter. armaprocess Eigenschaften von arma Prozesse mit gegebenen Parametern, Dazu gehören Werkzeuge zur Umwandlung zwischen ARMA, MA und AR Darstellung sowie acf, pacf, spektrale Dichte, Impulsantwortfunktion und ähnliches. Ähnlich wie armaprocess aber arbeiten im Frequenzbereich. Zentren zusätzliche Helfer-Funktionen, um Arrays von verzögerten Variablen zu schaffen, konstruieren Regressoren für Trend, detrend und ähnliche. Filter Helfer-Funktion für die Filterung Zeitreihen. Einige zusätzliche Funktionen, die auch nützlich sind für die Zeitreihenanalyse sind In anderen Teilen von Statsmodellen, zum Beispiel zusätzliche statistische Tests. Einige verwandte Funktionen sind auch in Matplotlib, Nitime, und diese Funktionen sind mehr für die Verwendung in der Signalverarbeitung, wo längere Zeitreihen verfügbar sind und arbeiten häufiger im Frequenzbereich. Beschreibende Statistiken und Tests. X, unvoreingenommen, demean, fft. Statsmodels ist ein Python-Paket, das eine Ergänzung zu scipy für statistische Berechnungen einschließlich deskriptive Statistiken und Schätzung der statistischen Modelle bietet. Der Name wurde in statsmodels geändert, die neue Version ist at. Hain Features. regression generalized Kleinste Quadrate einschließlich gewichtete kleinste Quadrate und kleinste Quadrate mit autoregressiven Fehlern, gewöhnliche kleinste Quadrate. glm Generalisierte lineare Modelle mit Unterstützung für alle ein-Parameter exponentielle Familienverteilungen. diskrete Wahlmodelle Poisson, probit, logit, multinomial logit. rlm Robuste lineare Modelle Mit Unterstützung für mehrere M-estimators. tsa Zeitreihenanalyse-Modelle, einschließlich ARMA, AR, VAR. nonparametrische Univariate Kernel Dichte Schätzer. datasets Datasets verteilt und verwendet für Beispiele und in testing. PyDTA Tools zum Lesen von Stata-Dateien in numpy Arrays. Stats eine breite Palette von statistischen tests. sandbox Es gibt auch eine Sandbox, die Code für verallgemeinerte additive Modelle ungetestet, Misch-Effekte-Modelle, cox Proportional Hazards Modell beide sind ungetestet und immer noch abhängig von der nipy Formel Rahmen, die Erzeugung von beschreibenden Statistiken und Drucktabelle Ausgabe auf ascii, latex und html Es gibt auch experimentelle Code für Systeme der Gleichungen Regression, Zeitreihenmodelle, Panel Daten Schätzer und Informationstheoretische Maßnahmen Keine dieser Code gilt als Produktion ready. Where, um es zu bekommen. Development Filialen werden auf Github Dies ist, wo zu gehen, um die meisten up to date Code in der Stamm-Branche Experimentelle Code ist hier gehostet in Zweigniederlassungen und in Entwickler-Gabeln Dieser Code wird zusammengeführt, um oft zu meistern Wir versuchen, um sicherzustellen, dass die Master-Zweig ist immer stable. Source Download Von stabilen Tags werden auf SourceForge. Introduktion zu ARIMA nonseasonal models. ARIMA p, d, q Vorhersage Gleichung ARIMA Modelle sind in der Theorie die allgemeinste Klasse von Modellen für die Prognose einer Zeitreihe, die gemacht werden können, um stationär zu sein, indem sie differenzieren, wenn Notwendig, vielleicht in Verbindung mit nichtlinearen Transformationen wie Protokollierung oder Abblendung ggf. Eine zufällige Variable, die eine Zeitreihe ist, ist stationär, wenn ihre statistischen Eigenschaften im Laufe der Zeit konstant sind. Eine stationäre Serie hat keinen Trend, ihre Variationen um ihren Mittelwert haben eine konstante Amplitude , Und es wackelt in einer konsequenten Art und Weise, dh seine kurzfristigen zufälligen Zeitmuster sehen immer gleich in einem statistischen Sinn aus. Die letztere Bedingung bedeutet, dass ihre Autokorrelationen Korrelationen mit ihren eigenen vorherigen Abweichungen vom Mittel konstant über die Zeit oder äquivalent, dass seine Leistungsspektrum bleibt über die Zeit konstant Eine zufällige Variable dieser Form kann wie üblich als eine Kombination von Signal und Rauschen betrachtet werden, und das Signal, wenn man offensichtlich ist, könnte ein Muster der schnellen oder langsamen mittleren Reversion oder sinusförmigen Oszillation oder eines schnellen Wechsels sein Im Zeichen, und es könnte auch eine saisonale Komponente haben Ein ARIMA-Modell kann als ein Filter betrachtet werden, der versucht, das Signal vom Rauschen zu trennen, und das Signal wird dann in die Zukunft extrapoliert, um Prognosen zu erhalten. Die ARIMA-Prognosegleichung für ein stationäres Zeitreihe ist eine lineare, dh regressionsgleiche Gleichung, bei der die Prädiktoren aus Verzögerungen der abhängigen Variablen und / oder Verzögerungen der Prognosefehler bestehen. Das ist. Predizierter Wert von Y eine Konstante und / oder eine gewichtete Summe aus einem oder mehreren neueren Werten von Y Und oder eine gewichtete Summe von einem oder mehreren neueren Werten der Fehler. Wenn die Prädiktoren nur aus verzögerten Werten von Y bestehen, ist es ein reines autoregressives, selbstregressives Modell, das nur ein Spezialfall eines Regressionsmodells ist und das angebracht werden könnte Mit Standard-Regressionssoftware Zum Beispiel ist ein autoregressives AR 1-Modell erster Ordnung für Y ein einfaches Regressionsmodell, bei dem die unabhängige Variable nur Y um eine Periode LAG Y, 1 in Statgraphics oder YLAG1 in RegressIt liegt. Wenn einige der Prädiktoren sind Verzögerungen der Fehler, ein ARIMA-Modell ist es nicht ein lineares Regressionsmodell, denn es gibt keine Möglichkeit, den letzten Periodenfehler als eigenständige Variable anzugeben, die Fehler müssen auf Perioden-Periode-Basis berechnet werden, wenn das Modell angebracht ist Die Daten Aus technischer Sicht ist das Problem bei der Verwendung von verzögerten Fehlern als Prädiktoren, dass die Vorhersagen des Modells keine linearen Funktionen der Koeffizienten sind, obwohl sie lineare Funktionen der vergangenen Daten sind. Daher müssen Koeffizienten in ARIMA-Modellen, die verzögerte Fehler enthalten, sein Geschätzt durch nichtlineare Optimierungsmethoden Hügelklettern, anstatt nur ein System von Gleichungen zu lösen. Das Akronym ARIMA steht für Auto-Regressive Integrated Moving Average Lags der stationärisierten Serie in der Prognose Gleichung werden autoregressive Begriffe genannt, Verzögerungen der Prognosefehler werden aufgerufen Gleitende durchschnittliche Ausdrücke und eine Zeitreihe, die differenziert werden muss, um stationär zu sein, soll eine integrierte Version einer stationären Serie sein. Random-Walk - und Random-Trend-Modelle, autoregressive Modelle und exponentielle Glättungsmodelle sind alle Sonderfälle von ARIMA Modelle. Ein nicht seasonal ARIMA-Modell ist als ARIMA p, d, q-Modell klassifiziert, wobei. p die Anzahl der autoregressiven Begriffe ist. d ist die Anzahl der Nicht-Sektionsunterschiede, die für die Stationarität benötigt werden, und. q ist die Anzahl der verzögerten Prognosefehler in Die Vorhersagegleichung. Die Vorhersagegleichung wird wie folgt aufgebaut: Erstens bezeichne y die d-te Differenz von Y, die bedeutet. Hinweis, dass die zweite Differenz von Y der d 2 Fall nicht der Unterschied von 2 Perioden ist. Vielmehr ist es der erste - differenz-of-the-first-Differenz, die das diskrete Analog einer zweiten Ableitung ist, dh die lokale Beschleunigung der Serie und nicht deren lokaler Trend. In Bezug auf y ist die allgemeine Prognosegleichung gegeben. Hier werden die gleitenden Mittelparameter s definiert So dass ihre Zeichen sind negativ in der Gleichung, nach der Konvention von Box und Jenkins eingeführt Einige Autoren und Software einschließlich der R-Programmiersprache definieren sie, so dass sie Pluszeichen statt Wenn die tatsächlichen Zahlen in die Gleichung gesteckt sind, gibt es keine Mehrdeutigkeit, Aber es ist wichtig zu wissen, welche Konvention Ihre Software verwendet, wenn Sie die Ausgabe lesen Oft werden die Parameter dort mit AR 1, AR 2 und MA 1, MA 2 usw. bezeichnet. Um das passende ARIMA-Modell für Y zu identifizieren, beginnen Sie Durch die Bestimmung der Reihenfolge der Differenzierung d Notwendigkeit, die Serie zu stationieren und entfernen Sie die groben Merkmale der Saisonalität, vielleicht in Verbindung mit einer Varianz-stabilisierende Transformation wie Protokollierung oder Abblendung Wenn Sie an diesem Punkt zu stoppen und vorherzusagen, dass die differenzierte Serie ist konstant, Sie Haben nur einen zufälligen Spaziergang oder ein zufälliges Trendmodell gepasst. Allerdings können die stationärisierten Serien noch autokorrelierte Fehler haben, was darauf hindeutet, dass in der Prognosegleichung auch eine Anzahl von AR-Terme p1 und oder einige Zahl MA-Terme q1 benötigt werden Die Werte von p, d und q, die für eine gegebene Zeitreihe am besten sind, werden in späteren Abschnitten der Noten, deren Links oben auf dieser Seite stehen, aber eine Vorschau auf einige der Arten von nicht-seasonalen ARIMA-Modellen, die sind, diskutiert Gemeinhin angetroffen wird unten gegeben. ARIMA 1,0,0 Autoregressives Modell erster Ordnung, wenn die Serie stationär und autokorreliert ist, vielleicht kann es als ein Vielfaches ihres eigenen vorherigen Wertes vorhergesagt werden, plus eine Konstante Die Prognosegleichung ist in diesem Fall. Die auf sich selbst zurückgegangen ist, ist von einer Periode zurückgegangen. Dies ist ein konstantes ARIMA 1,0,0-Modell Wenn der Mittelwert von Y Null ist, dann wäre der konstante Term nicht enthalten. Wenn der Steigungskoeffizient 1 positiv und kleiner als 1 ist Größe muss es kleiner als 1 in der Größenordnung sein, wenn Y stationär ist, beschreibt das Modell das Mittelrückkehrverhalten, bei dem der nächste Periodenwert prognostiziert werden soll, um 1 mal so weit weg vom Mittel zu sein, wie dieser Periodenwert If 1 negativ ist, Es prognostiziert Mittel-Rückkehr-Verhalten mit Wechsel von Zeichen, dh es prognostiziert auch, dass Y wird unterhalb der mittleren nächsten Periode, wenn es über dem Mittelwert dieser Periode ist. In einem zweiten Ordnung autoregressive Modell ARIMA 2,0,0 gibt es Ein Y-t-2-Term auf der rechten Seite und so weiter Abhängig von den Zeichen und Größen der Koeffizienten könnte ein ARIMA 2.0,0 Modell ein System beschreiben, dessen mittlere Reversion in einer sinusförmig oszillierenden Weise stattfindet, wie die Bewegung einer Masse auf einer Feder, die zufälligen Schocks ausgesetzt ist. WELLE 0,1,0 zufälliger Spaziergang Wenn die Serie Y nicht stationär ist, ist das einfachste Modell für sie ein zufälliges Wandermodell, das als Begrenzungsfall betrachtet werden kann Eines AR 1 - Modells, bei dem der autoregressive Koeffizient gleich 1 ist, dh eine Reihe mit unendlich langsamer mittlerer Reversion Die Vorhersagegleichung für dieses Modell kann geschrieben werden, wo der konstante Term die durchschnittliche Periodenperiodenänderung ist, Term-Drift in Y Dieses Modell könnte als ein Nicht-Intercept-Regressionsmodell eingebaut werden, bei dem die erste Differenz von Y die abhängige Variable ist. Da es nur eine nicht-seasonale Differenz und einen konstanten Term enthält, wird sie als ARIMA 0,1,0 klassifiziert Modell mit Konstante Das zufällige-Walk-ohne - Drift-Modell wäre ein ARIMA 0,1,0 Modell ohne constant. ARIMA 1,1,0 differenzierte Autoregressive Modell erster Ordnung Wenn die Fehler eines zufälligen Walk-Modells autokorreliert sind, vielleicht die Problem kann durch Hinzufügen einer Verzögerung der abhängigen Variablen zu der Vorhersagegleichung behoben werden - dh durch Umschalten der ersten Differenz von Y auf sich selbst verzögert um eine Periode Dies würde die folgende Vorhersagegleichung ergeben, die umgeordnet werden kann. Dies ist eine erste - autoregressives Modell mit einer Reihenfolge der Nicht-Sequenzdifferenzierung und eines konstanten Termes - dh eines ARIMA 1,1,0 model. ARIMA 0,1,1 ohne konstante, einfache exponentielle Glättung Eine weitere Strategie zur Korrektur autokorrelierter Fehler in einem zufälligen Walk-Modell wird vorgeschlagen Durch das einfache exponentielle Glättungsmodell Erinnern Sie sich, dass für einige nichtstationäre Zeitreihen, z. B. solche, die geräuschvolle Schwankungen um ein langsam variierendes Mittel aufweisen, das zufällige Spaziergangmodell nicht so gut funktioniert wie ein gleitender Durchschnitt von vergangenen Werten Jüngste Beobachtung als Prognose der nächsten Beobachtung, ist es besser, einen Durchschnitt der letzten Beobachtungen zu verwenden, um das Rauschen herauszufiltern und den lokalen Mittel genauer zu schätzen. Das einfache exponentielle Glättungsmodell verwendet einen exponentiell gewichteten gleitenden Durchschnitt der Vergangenheit Werte, um diesen Effekt zu erzielen Die Vorhersagegleichung für das einfache exponentielle Glättungsmodell kann in einer Anzahl von mathematisch äquivalenten Formen geschrieben werden, von denen eine die sogenannte Fehlerkorrekturform ist, in der die vorherige Prognose in Richtung des Fehlers eingestellt wird Gemacht. Wenn e t-1 Y t-1 - t-1 per Definition, kann dies umgeschrieben werden, wie ist eine ARIMA 0,1,1 - without-konstante Prognose Gleichung mit 1 1 - Dies bedeutet, dass Sie passen können Einfache, exponentielle Glättung, indem man sie als ARIMA-0,1,1-Modell ohne Konstante angibt und der geschätzte MA 1 - Koeffizient 1-minus-alpha in der SES-Formel entspricht. Erinnern Sie sich, dass im SES-Modell das Durchschnittsalter der Daten in der 1-Periodenprognosen ist 1 bedeutet, dass sie dazu neigen, hinter Tendenzen oder Wendepunkten um etwa 1 Perioden zu verzichten. Daraus folgt, dass das Durchschnittsalter der Daten in den 1-Periodenprognosen eines ARIMA 0,1,1 - Ohne-konstantes Modell ist 1 1 - 1 Also, wenn 1 0 8, das Durchschnittsalter ist 5 As 1 nähert sich 1, wird das ARIMA 0,1,1 - without-konstantes Modell ein sehr langfristig gleitender Durchschnitt , Und als 1 nähert sich 0 wird es zu einem zufälligen Walk-ohne-Drift-Modell. Was ist der beste Weg, um Autokorrelation zu korrigieren Hinzufügen von AR-Terme oder Hinzufügen von MA-Terme In den beiden vorangegangenen Modellen, die oben diskutiert wurden, ist das Problem der autokorrelierten Fehler in einem zufälligen Walk-Modell wurde auf zwei verschiedene Arten fixiert, indem man einen verzögerten Wert der differenzierten Reihe zur Gleichung hinzufügte oder einen verzögerten Wert des Prognosefehlers hinzufügte. Welcher Ansatz ist am besten eine Faustregel für diese Situation, die ausführlicher erörtert wird Später ist, dass die positive Autokorrelation in der Regel am besten durch Hinzufügen eines AR-Begriffs an das Modell behandelt wird und negative Autokorrelation ist in der Regel am besten durch Hinzufügen eines MA-Begriffs In geschäftlichen und wirtschaftlichen Zeitreihen, negative Autokorrelation oft entsteht als Artefakt der Differenzierung Im Allgemeinen, Differenziert die positive Autokorrelation und kann sogar einen Wechsel von positiver zu negativer Autokorrelation verursachen. So wird das ARIMA-0,1,1-Modell, bei dem die Differenzierung mit einem MA-Term begleitet wird, häufiger als ein ARIMA 1,1,0-Modell verwendet. ARIMA 0,1,1 mit konstanter einfacher exponentieller Glättung mit Wachstum Durch die Implementierung des SES-Modells als ARIMA-Modell gewinnt man gewisse Flexibilität. Zunächst einmal ist der geschätzte MA 1 - Koeffizient negativ, dies entspricht einem Glättungsfaktor größer als 1 in einem SES-Modell, das in der Regel nicht von der SES-Modell-Anpassungs-Prozedur erlaubt ist Zweitens haben Sie die Möglichkeit, einen konstanten Begriff in das ARIMA-Modell einzubeziehen, wenn Sie es wünschen, um einen durchschnittlichen Nicht-Null-Trend zu schätzen. Die ARIMA 0 , 1,1 Modell mit Konstante hat die Vorhersage Gleichung. Die Ein-Periode-voraus Prognosen aus diesem Modell sind qualitativ ähnlich denen der SES-Modell, mit der Ausnahme, dass die Trajektorie der langfristigen Prognosen ist in der Regel eine abfallende Linie, deren Steigung ist Gleich mu anstatt einer horizontalen Linie. ARIMA 0,2,1 oder 0,2,2 ohne konstante lineare exponentielle Glättung Lineare exponentielle Glättungsmodelle sind ARIMA-Modelle, die zwei Nichtseason-Differenzen in Verbindung mit MA-Terme verwenden Der zweite Unterschied einer Serie Y Ist nicht einfach der Unterschied zwischen Y und selbst, der von zwei Perioden verzögert ist, sondern vielmehr der erste Unterschied des ersten Unterschiedes - die Veränderung der Veränderung von Y in der Periode t. Also die zweite Differenz von Y in der Periode T ist gleich Y t - Y t-1 - Y t-1 - Y t-2 Y t - 2Y t-1 Y t-2 Eine zweite Differenz einer diskreten Funktion ist analog zu einer zweiten Ableitung einer stetigen Funktion Misst die Beschleunigung oder Krümmung in der Funktion zu einem gegebenen Zeitpunkt. Das ARIMA 0,2,2 Modell ohne Konstante prognostiziert, dass die zweite Differenz der Serie gleich einer linearen Funktion der letzten beiden Prognosefehler ist, die als umgeordnet werden kann. Wobei 1 und 2 die MA 1 - und MA 2 - Koeffizienten sind. Dies ist ein allgemeines lineares exponentielles Glättungsmodell, das im Wesentlichen das gleiche wie das Holt-Modell ist, und das Brown-Modell ist ein Spezialfall. Es verwendet exponentiell gewichtete Bewegungsdurchschnitte, um sowohl eine lokale Ebene als auch eine Lokaler Trend in der Serie Die Langzeitprognosen von diesem Modell konvergieren zu einer geraden Linie, deren Steigung von der durchschnittlichen Tendenz abhängt, die gegen Ende der Serie beobachtet wird. ARIMA 1,1,2 ohne konstante gedämpfte Trend-lineare exponentielle Glättung. Dieses Modell Wird in den begleitenden Folien auf ARIMA-Modellen dargestellt. Es extrapoliert den lokalen Trend am Ende der Serie, aber erhebt es bei längeren Prognosehorizonten, um eine Note des Konservatismus einzuführen, eine Praxis, die empirische Unterstützung hat. Sehen Sie den Artikel auf Warum der gedämpfte Trend funktioniert Von Gardner und McKenzie und der Golden Rule Artikel von Armstrong et al für Details. Es ist in der Regel ratsam, an Modellen, in denen mindestens eines von p und q ist nicht größer als 1, dh nicht versuchen, ein Modell wie ARIMA passen 2,1,2, da dies wahrscheinlich zu Überbrückungs - und Gattungsfaktor-Problemen führen wird, die in den Anmerkungen zur mathematischen Struktur von ARIMA-Modellen näher erörtert werden. Spreadsheet-Implementierung ARIMA-Modelle wie die oben beschriebenen sind einfach zu implementieren Eine Tabellenkalkulation Die Vorhersagegleichung ist einfach eine lineare Gleichung, die sich auf vergangene Werte von ursprünglichen Zeitreihen und vergangenen Werten der Fehler bezieht. So können Sie eine ARIMA-Prognosekalkulationstabelle einrichten, indem sie die Daten in Spalte A, die Prognoseformel in Spalte B, Und die Fehlerdaten minus Prognosen in Spalte C Die Prognoseformel in einer typischen Zelle in Spalte B wäre einfach ein linearer Ausdruck, der sich auf Werte in vorhergehenden Zeilen der Spalten A und C bezieht, multipliziert mit den entsprechenden AR - oder MA-Koeffizienten, die in anderen Zellen gespeichert sind Die Kalkulationstabelle
No comments:
Post a Comment