So führen sie den goldfeld-quandt-test in r durch
Der Goldfeld-Quandt-Test wird verwendet, um festzustellen, ob in einem Regressionsmodell Heteroskedastizität vorliegt.
Heteroskedastizität bezieht sich auf die ungleichmäßige Streuung von Residuen auf verschiedenen Ebenen einer Antwortvariablen in einem Regressionsmodell.
Wenn Heteroskedastizität vorliegt, verstößt dies gegen eine der Schlüsselannahmen der linearen Regression , dass die Residuen auf jeder Ebene der Antwortvariablen gleichmäßig verteilt sind.
Dieses Tutorial bietet ein schrittweises Beispiel für die Durchführung des Goldfeld-Quandt-Tests in R, um zu bestimmen, ob in einem bestimmten Regressionsmodell Heteroskedastizität vorhanden ist oder nicht.
Schritt 1: Erstellen Sie ein Regressionsmodell
Zuerst erstellen wir ein multiples lineares Regressionsmodell unter Verwendung des in R integrierten mtcars- Datensatzes:
#fit a regression model model <- lm(mpg~disp+hp, data=mtcars) #view model summary summary(model) Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 30.735904 1.331566 23.083 < 2nd-16 *** available -0.030346 0.007405 -4.098 0.000306 *** hp -0.024840 0.013385 -1.856 0.073679 . --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 3.127 on 29 degrees of freedom Multiple R-squared: 0.7482, Adjusted R-squared: 0.7309 F-statistic: 43.09 on 2 and 29 DF, p-value: 2.062e-09
Schritt 2: Führen Sie den Goldfeld-Quandt-Test durch
Als Nächstes verwenden wir die Funktion gqtest() aus dem Paket lmtest , um den Goldfeld-Quandt-Test durchzuführen und festzustellen, ob Heteroskedastizität vorliegt.
Diese Funktion verwendet die folgende Syntax:
gqtest(Modell, order.by, Daten, Bruch)
Gold:
- Modell: Das mit dem Befehl lm() erstellte lineare Regressionsmodell.
- order.by: die Vorhersagevariable(n) des Modells.
- Daten: Der Name des Datensatzes.
- Bruchteil*: Anzahl der zentralen Beobachtungen, die aus dem Datensatz entfernt werden sollen.
*Der Goldfeld-Quandt-Test funktioniert, indem er eine Reihe von Beobachtungen entfernt, die sich in der Mitte des Datensatzes befinden, und dann testet, um festzustellen, ob sich die Verteilung der Residuen von den beiden resultierenden Datensätzen unterscheidet, die auf beiden Seiten der Datensätze liegen. zentrale Beobachtungen.
Normalerweise entfernen wir etwa 20 % der gesamten Beobachtungen. In diesem Fall hat mtcars insgesamt 32 Beobachtungen, sodass wir die zentralen 7 Beobachtungen entfernen können:
#load lmtest library library(lmtest) #perform the Goldfeld Quandt test gqtest(model, order.by = ~disp+hp, data = mtcars, fraction = 7) Goldfeld-Quandt test data: model GQ = 1.0316, df1 = 10, df2 = 9, p-value = 0.486 alternative hypothesis: variance increases from segment 1 to 2
So interpretieren Sie das Ergebnis:
- Die Teststatistik beträgt 1,0316 .
- Der entsprechende p-Wert beträgt 0,486 .
Der Goldfeld-Quandt-Test verwendet die folgenden Null- und Alternativhypothesen:
- Null (H 0 ) : Homoskedastizität liegt vor.
- Alternative ( HA ): Heteroskedastizität liegt vor.
Da der p-Wert nicht kleiner als 0,05 ist, können wir die Nullhypothese nicht ablehnen. Wir haben keine ausreichenden Beweise, um zu behaupten, dass Heteroskedastizität im Regressionsmodell vorhanden ist.
Was macht man als nächstes
Wenn Sie die Nullhypothese des Goldfeld-Quandt-Tests nicht ablehnen, liegt keine Heteroskedastizität vor und Sie können mit der Interpretation des Ergebnisses der ursprünglichen Regression fortfahren.
Wenn Sie jedoch die Nullhypothese ablehnen, bedeutet dies, dass in den Daten Heteroskedastizität vorliegt. In diesem Fall sind die in der Regressionsausgabetabelle angezeigten Standardfehler möglicherweise unzuverlässig.
Es gibt mehrere gängige Möglichkeiten, dieses Problem zu lösen, darunter:
1. Transformieren Sie die Antwortvariable.
Sie können versuchen, eine Transformation an der Antwortvariablen durchzuführen, indem Sie beispielsweise den Logarithmus, die Quadratwurzel oder die Kubikwurzel der Antwortvariablen ziehen. Im Allgemeinen kann dies dazu führen, dass die Heteroskedastizität verschwindet.
2. Verwenden Sie eine gewichtete Regression.
Die gewichtete Regression weist jedem Datenpunkt basierend auf der Varianz seines angepassten Werts eine Gewichtung zu. Im Wesentlichen werden dadurch Datenpunkte mit höheren Varianzen niedrig gewichtet, wodurch ihre Restquadrate reduziert werden.
Wenn die entsprechenden Gewichte verwendet werden, kann die gewichtete Regression das Problem der Heteroskedastizität beseitigen.
Zusätzliche Ressourcen
So führen Sie eine multiple lineare Regression in R durch
So führen Sie den White-Test in R durch
So führen Sie einen Breusch-Pagan-Test in R durch