Durbin-Watson-Test in R durchführen

Von Fabian
Kategorie: R
Tags: Regression
Lesezeit: 3 Minuten

Eine der Hauptannahmen bei der linearen Regression ist, dass es keine Korrelation zwischen den Residuen gibt, z. B. sind die Residuen unabhängig.

Eine Möglichkeit, um festzustellen, ob diese Annahme erfüllt ist, besteht darin, einen Durbin-Watson-Test durchzuführen, mit dem das Vorhandensein einer Autokorrelation in den Residuen einer Regression festgestellt wird. Dieser Test verwendet die folgenden Hypothesen:

H 0 (Nullhypothese): Es gibt keine Korrelation zwischen den Residuen.

H A (alternative Hypothese): Die Residuen sind autokorreliert.

In diesem Tutorial wird erklärt, wie ein Durbin-Watson-Test in R durchgeführt wird.

Beispiel: Durbin-Watson-Test in R

Um einen Durbin-Watson-Test durchzuführen, müssen wir zunächst ein lineares Regressionsmodell anpassen. Wir werden den eingebauten R-Datensatz mtcars verwenden und ein Regressionsmodell anpassen, das mpg als Prädiktorvariable und disp und wt als erklärende Variablen verwendet.

#mtcars-Dataset laden
data(mtcars)

#Die ersten sechs Zeilen des Datensatzes anzeigen
head(mtcars)

                   mpg cyl disp  hp drat    wt  qsec vs am gear carb
Mazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
Datsun 710        22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2
Valiant           18.1   6  225 105 2.76 3.460 20.22  1  0    3    1

#Regressionsmodell anpassen
model <- lm(mpg ~ disp+wt, data=mtcars)

Als nächstes können wir einen Durbin-Watson-Test mit der Funktion durbinWatsonTest() aus dem car-Package durchführen:

#Paket laden
library(car)

#Durbin-Watson-Test durchführen
durbinWatsonTest(model)

Loading required package: carData
 lag Autocorrelation D-W Statistic p-value
   1        0.341622      1.276569   0.034
 Alternative hypothesis: rho != 0

Aus der Ausgabe können wir erkennen, dass die Teststatistik 1,276569 und der entsprechende p-Wert 0,034 beträgt. Da dieser p-Wert kleiner als 0,05 ist, können wir die Nullhypothese ablehnen und daraus schließen, dass die Residuen in diesem Regressionsmodell autokorreliert sind.

Was tun, wenn eine Autokorrelation erkannt wird?

Wenn Sie die Nullhypothese ablehnen und zu dem Schluss kommen, dass in den Residuen Autokorrelation vorhanden ist, haben Sie verschiedene Möglichkeiten, dieses Problem zu beheben, wenn Sie es für ernst genug halten:

  • Für eine positive serielle Korrelation sollten Sie Verzögerungen der abhängigen und / oder unabhängigen Variablen zum Modell hinzufügen.
  • Stellen Sie bei negativer serieller Korrelation sicher, dass keine Ihrer Variablen überdifferenziert ist.
  • Erwägen Sie für die saisonale Korrelation, dem Modell saisonale Dummy-Variablen hinzuzufügen.
Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: