So führen sie einen likelihood-ratio-test in r durch
Ein Likelihood-Ratio-Test vergleicht die Anpassungsgüte zweier verschachtelter Regressionsmodelle.
Ein verschachteltes Modell ist einfach ein Modell, das eine Teilmenge von Prädiktorvariablen im gesamten Regressionsmodell enthält.
Angenommen, wir haben das folgende Regressionsmodell mit vier Prädiktorvariablen:
Y = β 0 + β 1 x 1 + β 2 x 2 + β 3 x 3 + β 4 x 4 + ε
Ein Beispiel für ein verschachteltes Modell wäre das folgende Modell mit nur zwei der ursprünglichen Prädiktorvariablen:
Y = β 0 + β 1 x 1 + β 2 x 2 + ε
Um festzustellen, ob sich diese beiden Modelle erheblich unterscheiden, können wir einen Likelihood-Ratio-Test durchführen, der die folgenden Null- und Alternativhypothesen verwendet:
H 0 : Das vollständige Modell und das verschachtelte Modell passen gleich gut zu den Daten. Sie sollten also ein verschachteltes Modell verwenden .
H A : Das vollständige Modell passt deutlich besser zu den Daten als das verschachtelte Modell. Sie müssen also die vollständige Vorlage verwenden .
Wenn der p-Wert des Tests unter einem bestimmten Signifikanzniveau liegt (z. B. 0,05), können wir die Nullhypothese ablehnen und daraus schließen, dass das vollständige Modell eine deutlich bessere Anpassung bietet.
Das folgende Beispiel zeigt, wie ein Likelihood-Ratio-Test in R durchgeführt wird.
Beispiel: Likelihood-Ratio-Test in R
Der folgende Code zeigt, wie die folgenden zwei Regressionsmodelle in R mithilfe von Daten aus dem integrierten mtcars- Datensatz angepasst werden:
Vollständiges Modell: mpg = β 0 + β 1 verfügbar + β 2 Vergaser + β 3 PS + β 4 Zyl
Modell: mpg = β 0 + β 1 verfügbar + β 2 Kohlenhydrate
Wir werden die Funktion lrtest() des Pakets lmtest verwenden, um einen Likelihood-Ratio-Test für diese beiden Modelle durchzuführen:
library (lmtest) #fit full model model_full <- lm(mpg ~ disp + carb + hp + cyl, data = mtcars) #fit reduced model model_reduced <- lm(mpg ~ disp + carb, data = mtcars) #perform likelihood ratio test for differences in models lrtest(model_full, model_reduced) Likelihood ratio test Model 1: mpg ~ disp + carb + hp + cyl Model 2: mpg ~ available + carb #Df LogLik Df Chisq Pr(>Chisq) 1 6 -77.558 2 4 -78.603 -2 2.0902 0.3517
Aus dem Ergebnis können wir ersehen, dass die Chi-Quadrat-Teststatistik 2,0902 und der entsprechende p-Wert 0,3517 beträgt.
Da dieser p-Wert nicht kleiner als 0,05 ist, können wir die Nullhypothese nicht ablehnen.
Dies bedeutet, dass das vollständige Modell und das verschachtelte Modell gleich gut zu den Daten passen. Wir müssen daher das verschachtelte Modell verwenden, da die zusätzlichen Prädiktorvariablen im vollständigen Modell keine signifikante Verbesserung der Anpassung bewirken.
Wir könnten dann einen weiteren Likelihood-Ratio-Test durchführen, um zu bestimmen, ob sich ein Modell mit einer einzelnen Prädiktorvariablen signifikant von einem Modell mit beiden Prädiktoren unterscheidet:
library (lmtest) #fit full model model_full <- lm(mpg ~ disp + carb, data = mtcars) #fit reduced model model_reduced <- lm(mpg ~ disp, data = mtcars) #perform likelihood ratio test for differences in models lrtest(model_full, model_reduced) Likelihood ratio test Model 1: mpg ~ available + carb Model 2: mpg ~ available #Df LogLik Df Chisq Pr(>Chisq) 1 4 -78.603 2 3 -82.105 -1 7.0034 0.008136 ** --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Aus dem Ergebnis können wir ersehen, dass der p-Wert des Likelihood-Ratio-Tests 0,008136 beträgt. Da diese Zahl kleiner als 0,05 ist, würden wir die Nullhypothese ablehnen.
Wir kommen daher zu dem Schluss, dass das Modell mit zwei Prädiktoren eine deutliche Verbesserung der Anpassung gegenüber dem Modell mit einem Prädiktor bietet.
Unser endgültiges Modell wäre also:
mpg = β 0 + β 1 verfügbar + β 2 Kohlenhydrate
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
Wie man Bedeutungscodes in R interpretiert