Wie bereinige ich eine Reihe um die Jahreszeit? (Saisonbereinigung mit X-13, R-Code zum Mitnehmen)
Kurz
Wie bereinige ich eine Monats- oder Quartalsreihe um die Jahreszeit? X-13 läuft nicht im Browser, darum rechnet Statable die Saisonbereinigung nicht selbst. Es erzeugt die Reihe als CSV-Datei und ein R-Skript zum Mitnehmen, das in R mit dem Paket seasonal rechnet.
So geht es in Statable
- In der Zeitreihen-Auswertung den Abschnitt „Saisonbereinigung mit X-13 (in R auf dem eigenen Rechner)“ öffnen.
- Das Verfahren wählen: SEATS (Vorgabe) oder X-11.
- „Reihe als CSV speichern“ und „R-Skript speichern“.
- Beide Dateien in einen Ordner legen und das Skript in R ausführen. Es schreibt eine zweite CSV mit der bereinigten Reihe.
Nicht dasselbe wie die klassische Zerlegung
Die Zerlegung in der Zeitreihen-Auswertung (Trend, Saison, Rest) ist keine Saisonbereinigung nach X-13 und heißt auch nicht so. Sie bleibt, wie sie ist.
Wann es angeboten wird
- Nur bei Monats- oder Quartalswerten.
- Die Reihe darf keine Lücken haben. Statable füllt nichts auf.
- Es braucht mindestens 3 volle Jahre: 36 Monatswerte oder 12 Quartalswerte.
- Trifft etwas davon nicht zu, steht statt der Knöpfe ein Satz mit dem Grund.
Alle Schritte im Einzelnen
- Das Verfahren wählen: SEATS (Vorgabe, der Standard des Pakets seasonal) oder X-11.
- „Reihe als CSV speichern“ und „R-Skript speichern“.
- Beide Dateien in denselben Ordner legen und das Skript in R ausführen. R braucht dafür das Paket seasonal (mit x13binary).
- Das Skript schreibt eine zweite CSV-Datei mit der bereinigten Reihe. Sie lässt sich in Statable wieder öffnen.
Die CSV-Datei enthält den Zeitpunkt und den Wert, mit Punkt als Dezimalzeichen, in UTF-8. Mit „R-Skript ansehen“ lässt sich das Skript vor dem Speichern lesen.
Warnungen
- Statable rechnet das nicht. Das Ergebnis entsteht in R auf dem eigenen Rechner, und Statable hat es nicht geprüft.
- Kalender: seasonal prüft die Standard-Wochentags- und Ostereffekte. Österreichische Feiertage sind nicht enthalten; die ESS-Leitlinien empfehlen nationale Kalender. Wer sie braucht, ergänzt eigene Regressoren über xreg.
- Die Modellwahl von X-13 ist automatisch. summary(m) und die Diagnosen gehören gelesen.
Typische Beispiele
- Eine monatliche Arbeitslosenquote vom Jahreszeitmuster befreien, bevor die Entwicklung gedeutet wird.
- Quartalsumsätze über mehrere Jahre bereinigen und mit der Originalreihe vergleichen.
Für Fachleute
library(seasonal)
d <- read.csv("reihe.csv")
y <- ts(d$wert, start = c(1949, 1), frequency = 12) # 12 bei Monaten, 4 bei Quartalen
m <- seas(y) # bei X-11: seas(y, x11 = "")
summary(m)
plot(m)
bereinigt <- final(m)
Als Probe liefert seas(AirPassengers) das Modell (0 1 1)(0 1 1); die ersten bereinigten Werte sind 122,713; 124,766 und 125,073.