Sunday 30 April 2017

R Ts Gleitenden Durchschnitt

Ich habe eine Handlung von Zeitreihen in ggplot2 Paket und ich habe die Moving Average durchgeführt und ich möchte das Ergebnis der gleitenden Durchschnitt auf die Handlung der Zeitreihen hinzufügen. Beispiel des Datensatzes (p31): ambtemp dt -1.14 2007-09-29 00:01:57 -1.12 2007-09-29 00:03:57 -1.33 2007-09-29 00:05:57 -1.44 2007 -09-29 00:07:57 -1.54 2007-09-29 00:09:57 -1.29 2007-09-29 00:11:57 Angewandter Code für die Zeitreihen-Darstellung: Beispiel für Moving-Average-Plot Beispiel für erwartete Ergebnisse Herausforderung ist, dass die Zeitreihendaten aus dem Datensatz erhalten, die Zeitstempel und Temperatur enthalten, aber Moving Average Daten enthalten nur die durchschnittliche Spalte und nicht die Zeitstempel und Anpassung dieser beiden können Inkonsistenz verursachen. Moving Averages in R Nach meinem besten Wissen, R tut Haben keine integrierte Funktion zur Berechnung der gleitenden Mittelwerte. Mit der Filterfunktion können wir jedoch eine kurze Funktion für gleitende Mittelwerte schreiben: Wir können die Funktion auf beliebigen Daten verwenden: mav (data) oder mav (data, 11), wenn wir eine andere Anzahl von Datenpunkten angeben wollen Als die Standard-5-Plotterarbeiten wie erwartet: plot (mav (data)). Zusätzlich zu der Anzahl der Datenpunkte, über die gemittelt wird, können wir auch das Seitenargument der Filterfunktionen ändern: sides2 verwendet beide Seiten, Seiten1 verwendet nur vergangene Werte. Share this: Post navigation Kommentar Navigation Kommentar navigationTime Serie Analyse und ihre Anwendungen: Mit R Beispiele R Zeitreihen schnelle Lösung Die Seite verwendet JavaScript für die Syntax-Hervorhebung. Es ist nicht notwendig, um es einzuschalten, aber der Code wird schwerer zu lesen. Dies ist nur ein kurzer Spaziergang nach unten Zeit seRies Spur. Mein Rat ist, öffnen Sie R und spielen zusammen mit dem Tutorial. Hoffentlich haben Sie R installiert und gefunden das Symbol auf Ihrem Desktop, die wie ein R. gut aussieht, ist es ein R. Wenn youre mit Linux, dann aufhören, weil es nicht da. Öffnen Sie einfach ein Terminal und geben Sie R ein (oder installieren Sie R Studio.) Wenn Sie mehr auf Zeitreihengrafiken möchten, insbesondere mit ggplot2. Finden Sie in der Grafik Quick Fix. Die schnelle Lösung soll Sie aussetzen, um grundlegende R-Zeitreihen-Fähigkeiten und bewertet Spaß für Menschen im Alter von 8 bis 80. Dies ist nicht dazu gedacht, eine Lektion in Zeitreihenanalyse sein, aber wenn Sie ein wollen, können Sie versuchen, diese einfache kurz Kurs: loz Babyschritte. Ihre erste R-Sitzung. Holen Sie sich bequem, dann starten Sie sie und versuchen Sie einige einfache Ergänzung: Ok, jetzt bist du ein Experte verwenden R. Wollte jetzt astsa: Nun, da du geladen bist, können wir anfangen. Lass uns gehen Erstens, gut spielen mit dem Johnson amp Johnson Datensatz. Sein eingeschlossen in astsa als jj. Dass dynOmite Zeichen von Good Times. Zuerst betrachten Sie es. Und Sie sehen, dass jj eine Ansammlung von 84 Zahlen ist, die ein Zeitreihenobjekt genannt werden. So seeremove Ihre Objekte: Wenn Sie ein Matlab (oder ähnlich) Benutzer sind, können Sie denken, dass jj ist ein 84-mal 1-Vektor, aber seine nicht. Es hat Ordnung und Länge, aber keine Dimensionen (keine Zeilen, keine Spalten). R ruft diese Art von Objekten Vektoren, so dass Sie vorsichtig sein müssen. In R haben Matrizen Dimensionen, aber Vektoren nicht - sie nur Art von baumeln über im Cyberspace. Nun können wir ein monatliches Zeitreihenobjekt erstellen, das im Juni des Jahres 2293 beginnt. Wir betreten den Vortex. Beachten Sie, dass die Daten von Johnson und Johnson vierteljährliche Erträge sind. Die Zeitreihe zardoz ist monatlich, daher hat sie Frequenz12. Sie erhalten auch einige nützliche Dinge mit dem ts-Objekt, zum Beispiel: Jetzt versuchen Sie eine Handlung der Johnson Johnson Daten: Die Grafik gezeigt, ist ein wenig mehr Phantasie, als der Code geben wird. Weitere Informationen finden Sie auf der Seite Grafiken Quick Fix. Dies gilt für den Rest der Grundstücke, die Sie hier sehen werden. Versuchen Sie diese und sehen, was passiert: und während Sie hier, überprüfen Sie plot. ts und ts. plot. Beachten Sie, dass, wenn Ihre Daten ein Zeitreihenobjekt sind, plot () den Trick ausführen wird (für ein einfaches Zeitdiagramm). Andernfalls wird plot. ts () die Grafik in ein Zeitdiagramm zwingen. Wie wäre es mit Filtern, die die Johnson-amp-Johnson-Serie unter Verwendung eines zweiseitigen gleitenden Durchmessers ausführen, können wir dies versuchen: fjj (t) 8539 jj (t-2) frac14 jj (t & ndash; 1) T2) und gut fügen Sie eine lowess (lowess - Sie kennen die Routine) fit for fun. Lässt Unterschied die protokollierten Daten und nennen es dljj. Dann gut spielen mit dljj. Nun ein Histogramm und ein Q-Q-Diagramm, eine über die andere (aber auf eine schöne Art und Weise): Lets überprüfen Sie die Korrelationsstruktur von dljj mit verschiedenen Techniken. Zuerst betrachten wir ein Gitter von Streudiagrammen von dljj (t) versus verzögerten Werten. Die Linien sind eine Lowess-Passform und die Probe acf ist blau in der Box. Nun können wir einen Blick auf die ACF und PACF von dljj. Beachten Sie, dass die LAG-Achse in Häufigkeit ist. So dass 1,2,3,4,5 den Verzögerungen 4, 8, 12, 16, 20 entsprechen, da Frequenz4 hier vorliegt. Wenn Sie diese Art der Beschriftung nicht mögen, können Sie dljj in irgendeinem der oben durch ts (dljj, freq1) z. B. Acf (ts (dljj, freq1), 20) Bewegen Sie sich, versuchen wir eine strukturelle Zerlegung von log (jj) Trend Saison Fehler mit lowess. Wenn Sie die Residuen, z. B. theyre in dogtime. series, inspizieren wollen, 3. Die dritte Spalte der resultierenden Serie (die Saison - und Trendkomponenten sind in Spalten 1 und 2). Schauen Sie sich die ACF der Residuen, acf (dogtime. series, 3) die Residuen arent weiß-nicht einmal schließen. Sie können ein wenig (sehr wenig) besser mit einem lokalen saisonalen Fenster, im Gegensatz zu den globalen verwendet durch die Angabe von pro. Geben Sie stl für Details ein. Theres auch etwas, das StructTS genannt wird, das parametrische strukturelle Modelle passen wird. Wir verwenden diese Funktionen nicht im Text, wenn wir Strukturmodellierung in Kapitel 6 vorstellen, weil wir es vorziehen, unsere eigenen Programme zu verwenden. Loz Dies ist eine gute Zeit zu erklären. In der obigen ist Hund ein Objekt mit einer Menge von Dingen (Fachausdruck). Wenn Sie Hund eingeben. Youll sehen Sie die Komponenten, und wenn Sie schreiben Zusammenfassung (Hund) youll erhalten Sie eine kleine Zusammenfassung der Ergebnisse. Eine der Komponenten des Hundes ist time. series. Die die daraus resultierende Serie (Saison, Trend, Rest) enthält. Um diese Komponente des Objekthundes zu sehen. Sie Typ dogtime. series (und youll siehe 3-Serie, die letzte enthält die Residuen). Und das ist die Geschichte von. Youll sehen Sie mehr Beispiele, während wir entlang bewegen. Und nun gut tun ein Problem aus Kapitel 2. Wurden an die Regression log (jj) betatime alpha 1 Q1 alpha 2 Q2 alpha 3 Q3 alpha 4 Q4 epsilon, wo Qi ist ein Indikator für das Viertel i 1,2,3,4 passen . Dann die Residuen gut untersuchen. Sie können die Modellmatrix (mit den Dummy-Variablen) auf diese Weise anzeigen: Prüfen Sie nun, was passiert ist. Betrachten Sie ein Diagramm der Beobachtungen und ihrer angepassten Werte: was zeigt, dass ein Plot der Daten mit dem überlagerten Fit den Cyberspace nicht wert ist. Aber ein Plot der Residuen und der ACF der Residuen ist sein Gewicht in Joules wert: Werden diese Residuen weiß aussehen Ignorieren Sie die 0-Lag-Korrelation, die immer 1. Hinweis: Die Antwort ist NEIN. So dass die Regression oben ist nugatory. Also, was ist das Heilmittel Sorry, youll haben, um die Klasse zu nehmen, weil dies nicht eine Lehre in Zeitreihen ist. Ich habe dich an der Spitze gewarnt. Sie müssen vorsichtig sein, wenn Sie eine Zeitreihe auf verzögerte Komponenten eines anderen mit lm () regressieren. Es gibt ein Paket namens dynlm, das es einfach macht, verlagerte Regressionen, und Ill zu behandeln, dass direkt nach diesem Beispiel. Wenn Sie lm () verwenden. Dann, was Sie tun müssen, ist die Reihe zusammen mit ts. intersect binden. Wenn Sie nicht die Reihe zusammen binden, werden sie nicht richtig ausgerichtet. Heres ein Beispiel regressive wöchentliche Herz-Kreislauf-Mortalität (cmort) auf Partikel-Verschmutzung (Teil) zum derzeitigen Wert und lag vier Wochen (etwa einen Monat). Einzelheiten zum Datensatz finden Sie in Kapitel 2. Achten Sie darauf, dass astsa geladen ist. Hinweis: Es war nicht notwendig, die Verzögerung (Teil, -4) auf part4 umzubenennen. Es ist nur ein Beispiel für das, was Sie tun können. Eine Alternative dazu ist das Paket dynlm, das natürlich installiert werden muss (wie bei astsa dort oben). Nachdem das Paket installiert ist, können Sie das vorherige Beispiel wie folgt ausführen: Nun, seine Zeit zu simulieren. Das Arbeitspferd für ARIMA-Simulationen ist arima. sim (). Hier sind einige Beispiele keine Ausgabe wird hier gezeigt, so dass Sie auf eigene Faust. Mit astsa seine leicht zu einem ARIMA-Modell passen: Vielleicht fragen Sie sich über den Unterschied zwischen aic und AIC oben. Dafür müssen Sie den Text lesen oder einfach keine Sorgen darüber, weil es nicht wert ruiniert Ihren Tag darüber nachzudenken. Und ja, die Reste sehen weiß aus. Wenn Sie ARIMA Prognose machen wollen, ist sarima. for in astsa enthalten. Und nun für einige Regression mit autokorrelierten Fehlern. Wäre das Modell M t alpha betat gammaP t e t, wo M t und P t die Mortalität (cmort) und Partikel (Teil-) Serie sind, und e t autokorrelierter Fehler. Zuerst eine OLS passen und überprüfen Sie die Residuen: Jetzt passen das Modell Die Restanalyse (nicht gezeigt) sieht perfekt. Heres ein ARMAX-Modell, M t beta 0 phi 1 M t-1 phi 2 M t-2 beta 1 t beta 2 T t-1 beta 3 P t beta 4 P t-4 e t. Wobei e t möglicherweise autokorreliert wird. Zuerst versuchen wir und ARMAX (p2, q0), dann schauen Sie sich die Residuen und realisieren theres keine Korrelation links, so getan wurden. Schließlich eine Spektralanalyse schnell: Das ist alles für jetzt. Wenn Sie mehr über Zeitreihen-Grafiken erfahren möchten, finden Sie auf der Seite Grafiken Quick Fix.


No comments:

Post a Comment