So führen sie einen breusch-godfrey-test in r durch
Eine der wichtigsten Annahmen der linearen Regression besteht darin, dass zwischen den Residuen keine Korrelation besteht, d. h. die Residuen sind unabhängig.
Um die Autokorrelation erster Ordnung zu testen, können wir einen Durbin-Watson-Test durchführen. Wenn wir jedoch die Autokorrelation bei höheren Ordnungen testen möchten, müssen wir einen Breusch-Godfrey-Test durchführen.
Dieser Test basiert auf den folgenden Annahmen :
H 0 (Nullhypothese): Es gibt keine Autokorrelation einer Ordnung kleiner oder gleich p .
H A (Alternativhypothese): Es existiert eine Autokorrelation einer bestimmten Ordnung, die kleiner oder gleich p ist.
Die Teststatistik folgt einer Chi-Quadrat-Verteilung mit p Freiheitsgraden.
Wenn der p-Wert , der dieser Teststatistik entspricht, unter einem bestimmten Signifikanzniveau liegt (z. B. 0,05), können wir die Nullhypothese ablehnen und daraus schließen, dass eine Autokorrelation zwischen den Residuen ab einer bestimmten niedrigeren Ordnung oder gleich p besteht.
Um einen Breusch-Godfrey-Test in R durchzuführen, können wir die Funktion bgtest(y ~ x, order = p) aus der lmtest- Bibliothek verwenden.
Dieses Tutorial bietet ein Beispiel für die Verwendung dieser Syntax in R.
Beispiel: Breusch-Godfrey-Test in R
Erstellen wir zunächst einen gefälschten Datensatz, der zwei Prädiktorvariablen (x1 und x2) und eine Antwortvariable (y) enthält.
#create dataset df <- data. frame (x1=c(3, 4, 4, 5, 8, 9, 11, 13, 14, 16, 17, 20), x2=c(7, 7, 8, 8, 12, 4, 5, 15, 9, 17, 19, 19), y=c(24, 25, 25, 27, 29, 31, 34, 34, 39, 30, 40, 49)) #view first six rows of dataset head(df) x1 x2 y 1 3 7 24 2 4 7 25 3 4 8 25 4 5 8 27 5 8 12 29 6 9 4 31
Als nächstes können wir einen Breusch-Godfrey-Test mit der Funktion bgtest() aus dem Paket lmtest durchführen.
In diesem Beispiel testen wir die Autokorrelation zwischen den Residuen der Ordnung p = 3:
#load lmtest package library (lmtest) #perform Breusch-Godfrey test bgtest(y ~ x1 + x2, order= 3 , data=df) Breusch-Godfrey test for serial correlation of order up to 3 data: y ~ x1 + x2 LM test = 8.7031, df = 3, p-value = 0.03351
Aus dem Ergebnis können wir ersehen, dass die Teststatistik X2 = 8,7031 mit 3 Freiheitsgraden ist. Der entsprechende p-Wert beträgt 0,03351 .
Da dieser p-Wert kleiner als 0,05 ist, können wir die Nullhypothese ablehnen und daraus schließen, dass eine Autokorrelation zwischen den Residuen der Ordnung kleiner oder gleich 3 besteht.
Wie man mit Autokorrelation umgeht
Wenn Sie die Nullhypothese ablehnen und zu dem Schluss kommen, dass in den Residuen eine Autokorrelation vorliegt, haben Sie mehrere Möglichkeiten, dieses Problem zu beheben, wenn Sie es für ernst genug halten:
- Für eine positive serielle Korrelation sollten Sie erwägen, dem Modell Verzögerungen der abhängigen und/oder unabhängigen Variablen hinzuzufügen.
- Stellen Sie bei negativer serieller Korrelation sicher, dass keine Ihrer Variablen übermäßig verzögert ist.
- Für die saisonale Korrelation sollten Sie erwägen, dem Modell saisonale Dummies hinzuzufügen.
Zusätzliche Ressourcen
So führen Sie eine einfache lineare Regression in R durch
So führen Sie eine multiple lineare Regression in R durch
So führen Sie einen Durbin-Watson-Test in R durch