Gibt es eine Möglichkeit, Saisonalität bei Regressionskoeffizienten zuzulassen?

8

Angenommen, ich habe eine Zeitreihe, G t , und eine Kovariate B t . Ich möchte die Beziehung zwischen ihnen durch das ARMA-Modell finden:

G t = Z t + β 0 + β 1 B t

wobei der Rest Z t einem ARMA-Prozess folgt.

Das Problem ist: Ich weiß mit Sicherheit, dass β 0 und β 1 mit der Jahreszeit variieren. Ich möchte jedoch nicht jedem Monat ein eigenes Modell anpassen, da dies zu einer Diskontinuität in meiner Zeitreihe führt, was bedeutet, dass ich die Autokorrelationsfunktion der endgültigen Residuen nicht berechnen kann.

Gibt es also ein Zeitreihenmodell (oder eine Modellfamilie, frage ich mich), mit dem sich die Korrelationskoeffizienten seiner Kovariaten saisonal ändern können?

========================

Edit: Danke für die, die hier geantwortet haben. Ich entschied mich nur für saisonale Dummies, war aber beschäftigt und antwortete nicht rechtzeitig.

Eddiedienutty
quelle
Nein, das ist keine dumme Frage. Wenn Sie "Saisonalität ändern" meinen, meinen Sie damit, dass sich die Saisonalität im Laufe der Zeit ändert und nicht konstant ist? Wenn dies der Fall ist, benötigen Sie ein Modell, das die stochastische Saisonalität behandelt. Die Dummy-Codierung funktioniert nicht, da sie nur die deterministische Saisonalität behandelt. Siehe meine frühere Frage . Modellieren Sie einfach als ARIMA (p, d, q) (P, D, Q). Zt
Prognostiker

Antworten:

6

Bearbeiten (Die gleiche Idee wurde von Stephan Kolassa einige Minuten vor dem Posten meiner Antwort vorgeschlagen. Die Antwort unten kann Ihnen noch einige relevante Details geben.)

Sie könnten saisonale Dummies verwenden. Der Einfachheit halber illustriere ich dies für eine vierteljährliche Zeitreihe. Saisonale Dummies sind Indikatorvariablen für jede Saison. Der te saisonale Dummy nimmt den Wert 1 für die Beobachtungen an, die sich auf Saison und ansonsten auf 0 beziehen . Für eine vierteljährliche Serie sind die saisonalen Dummies wie folgt definiert:i S D.iiSD

SD=[100001000010000110001000010000100001]SDB=[B10000B20000B30000B4B5000Bn30000Bn20000Bn10000Bn]

Sie können jede Spalte in mit Ihrer erklärenden Variablen und die oben definierte Matrix- .B t S D B.SDBtSDB

Anschließend können Sie Ihr Modell wie folgt angeben:

Gt=Zt+β0,sSDt+β1,sSDBt,

wobei der Index die Jahreszeit angibt. Beachten Sie, dass wir jetzt vier Koeffizienten haben (12 in Ihrer monatlichen Reihe) , einen für jede Spalte in .β 1 , s S D B.sβ1,sSDB

Das gleiche gilt für den Abschnitt außer dass wir eine Spalte in entfernen müssen, um eine perfekte Kollinearität zu vermeiden. In einer monatlichen Serie würden Sie beispielsweise die ersten 11 saisonalen Abschnitte in . S D S D.β0SDSD

Wenn Sie das Modell beispielsweise mit maximaler Wahrscheinlichkeit anpassen, erhalten Sie eine Koeffizientenschätzung für jede Saison. Sie können auch testen, ob für alle oder ähnlich, wenn über die Jahreszeiten hinweg konstant ist. s β 1 , sβ0,ssβ1,s

javlacalle
quelle
1
+1. Obwohl Sie nicht mit gewöhnlichen kleinsten Quadraten passen möchten, wenn Sie ARMA-Fehler haben.
Stephan Kolassa
1
@javlacalle +1, Können wir einfach als ARIMA (p, d, q) (P, D, Q) anstelle von saisonalen Dummies verwenden, um die Saisonalität zu erfassen? Auf diese Weise berücksichtigen Sie neben der deterministischen Saisonalität auch die stochastische Saisonalität. Dies behandelt zwar nicht die OP-Frage zur Saisonalität als Regressionskoeffizienten, es könnte sich jedoch lohnen, den Unterschied hervorzuheben. Zt
Prognostiker
1
@forecaster Ich denke, das Ziel des OP ist es, den Einfluss von auf G t zu verschiedenen Jahreszeiten zu messen . Dies könnte erfasst werden, indem saisonal variierende Koeffizienten β s , 1 zugelassen werden . Wenn β 1 für alle Jahreszeiten konstant ist, können wir die Wirkung von B t nicht zu jeder Jahreszeit messen und testen, ob die Unterschiede signifikant sind. Wenn β 1 festgelegt ist, könnte die Beobachtung der Saisonalität in den Residuen darüber hinaus bedeuten, dass ein saisonaler Effekt nicht durch einen einzelnen Koeffizienten β 1 erfasst wird , sondern dass das Modell für Z t erweitert werden mussBtGtβs,1β1Btβ1β1Ztmittels eines saisonalen ARIMA-Modells.
Javlacalle
1
@Frank Der Achsenabschnitt wird für die ausgelassene Saison auf Null gesetzt. Die Koeffizienten der Abschnitte, die sich auf die verbleibenden Koeffizienten beziehen, werden als Änderung in Bezug auf den Durchschnittswert der gelöschten Saison interpretiert (der nicht unbedingt Null ist, sondern der Wert, der durch die Koeffizienten und Werte der verbleibenden Variablen in dieser Saison bestimmt wird).
Javlacalle
1
SDBαGt=α+Zt+β0,sSDt+β1,sSDBtGtα+β1,12SDBtβ0,ss=1,,11α
5

BtMtmtm

Gt=βMt+γBtMt+Zt

Ztβγ

Sie können die eigentliche Anpassung mit R mit dem nlmePaket durchführen, die gls()Funktion verwenden und eine corARMA()Korrelationsstruktur angeben .

Stephan Kolassa
quelle
Was ist, wenn Sie nicht viele Datenpunkte haben und Parameter beibehalten möchten? Gibt es eine Möglichkeit, eine Saison zu subtrahieren und gleichzeitig die Parameter auf ein Minimum zu beschränken?
Frank
1
@Frank: Wenn wir zu wenig Daten haben, um ein komplexes Modell zu unterstützen, würde ich persönlich auf Regularisierung achten, wie das Lasso, das elastische Netz oder Bayes'sche Ansätze.
Stephan Kolassa
βMtγBtMtβMtβYt=βMt+γBtMt+f(t)+Zt
Frank
1
β11Bt=0BtMβγ1+1+11+11=24f
1
Sie sollten sein, ja
Stephan Kolassa
4

β0(t)=w0+w1sinnt+w2cosntβ1(t)=w3+w4sinnt+w5cosntWenn Sie diese dann in Ihr lineares Modell einsetzen, sollten Sie etwas von der Form erhalten

Gt=Zt+wo+w1sinnt+w2cosnt+w3Bt+w4Btsinnt+w5Btcosnt

sinntcosntBtsinntBtcosntn2π/365

Dies würde keine Diskontinuitäten in das Modell einführen, da die Saisonalität in den Regressionskoeffizienten glatte Funktionen der Zeit sind. Ich vermute, wenn Sie Sinus- und Cosinuskomponenten hinzufügen, die Harmonische des Jahreszyklus darstellen, könnten Sie Abweichungen von einfachen sinusförmigen Variationen der Regressionskoeffizienten modellieren (Fourier-Reihen-Ansatz).

Vorsichtsmaßnahme: Es war ein langer Tag, also habe ich vielleicht irgendwo einen dummen Fehler gemacht.

Dikran Beuteltier
quelle
2π/12
Ein Nachteil, den ich sehe, ist, dass die Interpretation im Kontext eines Regressionsmodells weniger einfach ist. Die Interpretation der 0-1-Saisonattrappen kann eher in Monaten als in Zyklen saisonaler Periodizität erfolgen. Wir können zum Beispiel den Schluss ziehen, dass die Auswirkung der Temperatur auf den Verkauf eines bestimmten Produkts im August am höchsten ist und im März keine wesentlichen Auswirkungen hat. Im trigonometrischen Ansatz würden wir beispielsweise den Schluss ziehen, dass die Auswirkung der Temperatur auf den Umsatz einem Zyklus folgt, der alle 6 Monate wiederholt wird. Die erstere Interpretation kann informativer sein.
Javlacalle
β0β1
1
Soweit ich verstanden habe, ging es dem OP um Diskontinuitäten in den Residuen. Die Anpassung von 12 Regressionsmodellen (eines für jeden Monat) führt zu 12 Serien von Residuen anstelle einer Serie von Residuen, in denen Diagnosen durchgeführt werden müssen Autokorrelationen. Sowohl die 0-1-Dummies als auch die trigonometrischen Dummies wären ein geeigneter Weg, um dieses Problem zu lösen. Welcher Ansatz natürlicher ist, hängt, wie Sie sagen, vom Zweck der Analyse und der Art der gewünschten Informationen ab.
Javlacalle
Lassen Sie uns unterstreichen, dass die Frage allgemein ist und nur das Tag econometricsdas Interesse des OP an dieser Seite offenbart. Für Umweltzeitreihendaten ist der trigonometrische Ansatz oft sehr erfolgreich und natürlich, während Monate selbst dann keine oder nur eine geringe Bedeutung haben, selbst wenn die Daten auf diese Weise gemeldet werden.
Nick Cox
2

Passen Sie den Mittelwert und die Harmonischen des saisonalen Zyklus an die Zeitreihen von x und y an. Diese liefern die Intercept-Begriffe. Subtrahieren Sie sie dann von x und y, um Anomalien zu erzeugen. Verwenden Sie diese Anomalien x 'und y', um saisonal variierende Regressionssteigungskoeffizienten zu berechnen: Passen Sie das Array-Produkt zwischen x 'und y' mit den mittleren und führenden Harmonischen an den saisonalen Zyklus an. Machen Sie dasselbe für die Varianz des x '. Teilen Sie dann die Anpassung des saisonalen Zyklus an die Kovarianz durch die Anpassung des saisonalen Zyklus an die Varianz, um sich kontinuierlich entwickelnde Steigungskoeffizienten bereitzustellen. Weitere Informationen finden Sie unter http://onlinelibrary.wiley.com/doi/10.1002/qj.3054/full

Paul Roundy
quelle