Wie überprüft man die Voraussetzung der Linearität für das lineare Regressionsmodell in R und SPSS?
Wenn du eine lineare Regression durchführst, solltest du auch überprüfen, ob die Voraussetzungen dafür erfüllt sind. Die Signifikanzwerte (p-Werte), welche du in der Regression erhältst, sind nur dann akkurat, wenn die Voraussetzungen der Regression erfüllt sind. Sind die Voraussetzungen nicht erfüllt, kann die richtige Interpretation der p-Werte möglicherweise problematisch sein.
In diesem Beitrag schauen wir uns einen der wichtigsten Voraussetzungen an, nämlich den linearen Zusammenhang zwischen der/den unabhängiger/n Variablen und der abhängigen Variable. Wir zeigen dir, wie man den linearen Zusammenhang sowohl in R wie auch in SPSS überprüfen kannst. Zuerst erklären wir das theoretische Konzept. Am Ende des Artikels werden die Vorgänge für SPSS und R aufgezeigt.
Gesamtes Modell vs. linearer Zusammenhang zwischen einzelnen Variablen im Modell
Möchte man die Voraussetzung der Linearität überprüfen, kann man sowohl das Regressionsmodell als ganzes überprüfen um zu schauen, wie gut der lineare Zusammenhang zwischen den vorhergesagten Werte und die Residuen ist, oder man kann den linearen Zusammenhang zwischen der abhängigen Variable und jeder einzelnen Variable im Modell genauer betrachten. In den meisten Fällen wird lediglich die erste Methode durchgeführt, um zu zeigen, dass die Voraussetzung erfüllt ist. Es kann jedoch auch spannend sein zu sehen, inwiefern eine einzelne Variable einen linearen Zusammenhang mit der abhängigen Variable aufweist. In einem einfachen linearen Regressionsmodell sind die beiden Vorgehen identisch.
Linearität des gesamten Modelles
Um die Linearität des gesamten Regressionmodelles zu überprüfen, sind folgende Schritte nötig:
- Schätze das Regressionsmodell mit allen unabhängigen Variablen von Interesse
- Erstelle ein Streudiagramm zwischen den vorhergesagten Werten und den Residuen des Modells
- Füge dem Streudiagramm eine “Loess” Linie hinzu
- Schaue, wie nahe sich die Loess Linie um den Wert 0 herum bewegt. Je näher und je weniger Abweichung von der Nulllinie, desto besser.
In diesem Sinne kann der Ausdruck “Voraussetzung” ein bisschen verwirrend sein, da wir zuerst die Regression durchführen und danach schauen, ob das Kriterium überhaupt erfüllt ist.
Um zu überprüfen, ob die Kombination von unabhängigen Variablen als ganzes die abhängige Variable in einem linearen Modell gut erklären, können wir ein Streudiagramm zwischen den vorhergesagten Werten (X-Achse) und den Residuen (Y-Achse) des Modells erstellen.
Danach fügen wir dem Streudiagramm eine “Loess”-Function hinzu, die uns einen besseren Aufschluss über den Zusammenhang der gesuchten Variablen gibt. Wir überprüfen, ob sich die Loess Linie um die Nulllinie herum bewegt. Tut sie das, können wir davon ausgehen, dass wir ein gutes lineares Modell haben. Falls die Loess Linie starke Abweichung von der Nulllinie zeigt, müssen wir nochmals über die Bücher.
Das linke Bild zeigt einen Fall, in dem wir einen gutes lineares Modell haben. Das rechte Bild hingegeben zeigt uns, dass unsere Variablen im Modell nicht gut sind, die abhängige Variable in einer linearen Funktion zu schätzen.
Vorgehen in R – Ganzes Modell
Sowohl für R wie auch für SPSS verwenden wir den Datensatz mtcars, welcher standardmässig in R integriert ist. Konkret sind wir daran interessiert, wie der Anzahl Zylinder und den PS einer Wagens den Verbrauch in mpg (Miles per Gallons) schätzen können.
- Schätze das Modell
model <- lm(mpg ~ cyl + hp, mtcars) - Plotte die vorhergesagten Werte gegen die Residuen.
plot(model, which = 1)
Obwohl die rote Linie nicht perfekt auf den horizontalen Nulllinie liegt, bewegt sie sich doch um sie herum. Zudem sind keine extrem grossen Abweichungen ersichtlich. Darum können wir hier davon ausgehen, dass eine lineare Funktion der unabhängigen Variablen zum schätzen der abhängige Variable gut genug ist.
Vorgehen in SPSS – Ganzes Modell
Um den gleichen Plot in SPSS zu erhalten, müssen wir ebenfalls zuerst das lineare Modell schätzen.
- Im Menü, gehe auf Analysieren -> Regression -> Linear
- Wähle deine abhängigen und unabhängigen Variable
- Klicke auf auf den Button “Diagramme”
- Wähle für die X-Achse die ZPRED und für die Y-Achse die ZRESID
- Klicke auf Weiter und dann auf OK oder Einfügen. Falls du Einfügen klickst, musst du danach den Code noch in deinem Syntaxfile ausführen.
- Im Output solltest du nun ein Streudiagramm sehen: Auf der X-Achse den standardisierteren geschätzten Wert und auf der Y-Achse die standardisierten Residuen.
- Doppelklicke auf den genannten Plot
- Im Menü oben in SPSS sollten nun andere Optionen erscheinen. Wähle dort Elemente und dann Anpassungslinie bei Gesamtsumme
- Wähle die «Loess» Option aus bei den Radiobuttons
- Klicke auf Anwenden
- Die Loess Linie sollte nun im Streudiagramm sichtbar sein. Diese Linie sollte sich um die 0-Linie herumbewegen resp. es sollten keine klaren Muster darin ersichtlich sein, damit die Linearitätsbedingung erfüllt ist.
Linearität zwischen einzelnen Variablen im Regressionsmodell
Um den linearen Zusammenhang einer spezifischen unabhängigen Variable X1 und der abhängigen Variable Y in einem multiplen linearen Regressionsmodell mit mehreren unabhöngigen Variablen (bspw: X1, X2, X3, X4) zu überprüfen, sind die folgenden Schritte notwendig:
- Schätze ein Regressionsmodell (Model 1) von Y auf alle unabhängigen Variablen, ausser deiner Variable von Interesse und speichere die Residuen (r1).
Y ~ X2 + X3 + X4 - Schätze ein Regressionsmodell (Model 2) von X1 auf alle anderen unabhängigen Variablen und speichere die Residuen (r2)
X1 ~ X2 + X3 + X4 - Erstelle eine Streudiagramm zwischen den gespeicherten Residuen (r1) und (r2)
- Schätze eine Regressionsgerade (Model 3) zwischen den Residuen r1 und r2 der beiden Modelle und zeichne sie ins Streudiagramm.
- Füge zusätzlich eine Loess Function in das Diagramm ein. Schaue, wie nahe die Loess Linie an der Regressionslinie liegt. Je näher die Loess Werte an der Regressionsgeraden liegen, desto eher haben wir einen linearen Zusammenhang.
Durch das regressieren beider Residuen aufeinander erhalten wir den isolierten Effekt von X1 auf Y. Der Regressionskoeffizient den wir in Modell 3 erhalten ist genau der gleiche wie für X1 in dem folgenden Modell: Y ~ X1 + X2 + X3 + X4 (Modell 4).
Vorgehen in R – einzelne Variablen
Wir verwenden wieder den mtcars Datensatz. Die abhängige Variable ist mpg und die unabhängigen Variablen sind cyl, hp und drat. Uns interessiert der lineare Zusammenhang zwischen mpg und cyl,
- Schätze das Modell 1 (ohne unabhängige Variable von Interesse)
model1 <- lm(mpg ~ hp + drat, mtcars) - Schätze das Modell 1 (mit unabhängige Variable von Interesse als abhängige Variable)
model2 <- lm(cyl ~ hp + drat, mtcars) - Aktiviere (und installiere vorher) das Paket ggplot2
- Erstelle ein Streudiagramm der Residuen der beiden Modelle inkl. der Regressionslinie (rot) und der Loess-Funktion (blau).
ggplot(mapping = aes(x = model1$residuals, y = model2$residuals)) +
geom_point() +
geom_smooth(method = “lm”, se = FALSE, color=”red”) +
geom_smooth(method = “loess”, se = FALSE)
Vorgehen in SPSS – einzelne Variablen
- Im Menü, gehe auf Analysieren -> Regression -> Linear
- Wähle deine abhängigen und unabhängigen Variable. Schätze das Modell 1 (ohne unabhängige Variable von Interesse)
- Klicke auf den Button “Speichern” und wähle Residuen -> Standardisiert
- Klicke auf “Weiter” und dann auf “Ok”.
- Wiederhole den Prozess, aber ersetze nun die abhängige Variable mit deiner unabhängigen Variable von Interesse.
- Wenn du beide Schritte ausgeführt hast, solltest du nun zwei neue Variablen in deinen Daten finden. ZRESID1 und ZRESID2. Dies sind die gespeicherten Residuen der beiden Modelle.
- Klicke im SPSS Menü auf “Grafik” und danach auf Diagrammerstellung
- Wähle unten die folgende Option:
- Für den Plot, wähle die Standardisierten Residuen aus der Liste und ziehe sie auf die X resp. Y-Achse
- Klicke “Ok”.
- Der Plot wird nun erstellt und sollte in etwa so aussehen:
- Um die Loess Linie hinzuzufügen, doppelklicke auf den Plot und wähle dann oben im Menü “Elemente” -> “Anpassungslinie bei Gesamtsumme”. Wähle “LOESS” und klicke dann “Anwenden”.
- Wir haben nun die Loess Linie und die Regressionslinie im Gleichen Plot. Wenn sich die Loess Linie um die Regressionslinie bewegt, können wir von einem linearen Zusammenhang beider Variablen ausgehen (wenn wir für die anderen Variablen im Modell kontrollieren).