Website-Icon Björn Walther

Multiple lineare Regression in R rechnen und interpretieren

1 Ziel der multiplen linearen Regression

Eine multiple lineare Regressionsanalyse hat das Ziel eine abhängige Variable (y) mittels mehrerer unabhängigen Variablen (x) zu erklären. Es ist ein quantitatives Verfahren, das zur Prognose der abhängigen Variable dient.

Die multiple lineare Regression testet auf Zusammenhänge zwischen mehreren x-Variablen und einer y-Variablen. Für nur eine x-Variable wird die einfach lineare Regression verwendet. Für SPSS und Excel, schaut euch die jeweiligen Artikel an. Im Vorfeld der Regressionsanalyse kann zudem eine Filterung vorgenommen werden, um nur einen gewissen Teil der Stichprobe zu untersuchen, bei dem man am ehesten einen Effekt erwartet. 

2 Voraussetzungen der multiplen linearen Regression

Die wichtigsten Voraussetzungen sind:

 

3 Durchführung der multiplen linearen Regression in R

Nach dem Einlesen der Daten ist das Modell zu definieren – angelehnt an die Hypothesen. In meinem Beispiel versuche ich den Abiturschnitt durch den Intelligenzquotient (IQ) und die Motivation zu erklären. Demzufolge ist die abhängige (y-)Variable der Abiturschnitt und die unabhängigen (x-)Variablen der IQ und die Motivation. Die Installation zusätzlicher Pakete ist für diese Rechnung nicht nötig.

Zur multiplen linearen Regression verwendet man in R die lm()-Funktion. lm steht hierbei für linear model. Ich definiere mir ein Modell mit dem Namen “modell”. Hierin soll Abiturschnitt erklärt werden und wird an den Anfang in der Klammer gestellt, gefolgt von ~ und den erklärenden Variablen IQ und Motivation. Die Daten kommen aus dem Dataframe “data_xls”, weshalb ich das “data=“-Argument am Ende noch angefügt habe. Mit der summary()-Funktion lasse ich mir die Ergebnisse der Berechnung von “modell” ausgeben.  


modell <- lm(Abischni~IQ+Motivation, data = data_xls)
summary(modell)

Die Ausgabe ist im nächsten Schritt zu interpretieren.  

 

4 Interpretation der Ergebnisse der mutliplen linearen Regression in R


Call:
lm(formula = Abischni ~ IQ + Motivation, data = data_xls)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.53369 -0.17813 -0.03236  0.17889  0.76044 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept)  7.558010   0.397176  19.029  < 2e-16 ***
IQ          -0.039215   0.004477  -8.759 1.61e-11 ***
Motivation  -0.139323   0.024350  -5.722 6.66e-07 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.2801 on 48 degrees of freedom
Multiple R-squared:  0.8973,	Adjusted R-squared:  0.893 
F-statistic: 209.7 on 2 and 48 DF,  p-value: < 2.2e-16

Man beginnt ganz unten bei der F-Statistik. Schreibweise: F(2,48)=209,7; p< 2,2e-16. Die Signifikanz (p-Wert) sollte einen möglichst kleinen Wert (<0,05) haben. Wenn dem so ist, leistet das Regressionsmodell einen Erklärungsbeitrag.

Der p-Wert ist im Beispiel mit 2,2e-16 sehr klein. Das Komma wird nämlich um 16 Stellen nach links verschoben. Der p-Wert ist im Beispiel deutlich unter 0,05. Das Modell leistet in diesem Falle einen signifikanten Erklärungsbeitrag und es kann mit der Interpretation der weiteren Ergebnisse fortgefahren werden.

Achtung: Ist die Signifikanz über 0,05, leistet das Regressionsmodell keinen signifikanten Erklärungsbeitrag und das Verfahren bzw. die weitere Interpretation ist an dieser Stelle abzubrechen.  

 

4.1 Güte des Regressionsmodells


Multiple R-squared: 0.8973, Adjusted R-squared: 0.893

Die Güte des Modells der gerechneten Regression wird anhand des Bestimmtheitsmaßes R-Quadrat (R²) abgelesen. Das R² (Multiple R-Squared) ist standardmäßig zwischen 0 und 1 definiert. R² gibt an, wie viel Prozent der Varianz der abhängigen Variable (hier: Gewicht) erklärt werden. Ein höherer Wert  ist hierbei besser.

Im Beispiel erklärt das Modell 89,73% der Varianz, da das (Multiple R-squared) R²=0,8973 ist. Das korrigierte R² (Adjusted R-squared) adjustiert für eine automatische und ungewollte Zunahme des R². Es ist zusätzlich zum normalen R² zu berichten und ist auch stets kleiner als jenes.  


Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept)  7.558010   0.397176  19.029  < 2e-16 ***
IQ          -0.039215   0.004477  -8.759 1.61e-11 ***
Motivation  -0.139323   0.024350  -5.722 6.66e-07 ***

4.2 Signifikanz und Größe der Koeffizienten

Der Regressionskoeffizient (hier: Größe) sollte signifikant (p<0,05) sein. Warum? Damit die Nullhypothese nicht fälschlicherweiser abgelehnt wird. Die Signifikanz der beiden unabhängigen Variablen (IQ und Motivation) ist mit 1,61e-11 und 6,66e-07 deutlich unter 0,05 und somit haben beide einen signifikanten Einfluss auf den Abiturschnitt.

Unter "Estimate" ist der interpretierbare Effekt der jeweiligen Koeffizienten zu sehen. Es ist der nicht standardisierte Koeffizient. Im Regressionsmodell steht zunächst in der ersten Zeile der (Intercept). Das ist die sog. Konstante. Deren Signifikanz ist für den Fortgang der Untersuchung nicht relevant. Hier ist nur der Estimate interessant. Und eigentlich ist er auch nur dann interessant, wenn eine Prognose durchgeführt werden soll.

In der zweiten Zeile steht der Estimate für den IQ. Das ist der Teil des Abiturschnitts, um den sich die abhängige Variable ändert, wenn die unabhängige Variable um 1 steigt - immer! Konkret im Beispiel ist es -0,039215. Das heißt, dass bei einer Steigerung des IQs um eine Einheit der Abiturschnitt um 0,039215 fällt. Ein fallender Abiturschnitt steht natürlich für einen besseren Abiturschnitt.

Das ist auch plausibel, das bei steigender Intelligenz der Abiturschnitt besser wird. Generell gilt: Positive Koeffizienten haben einen positiven Einfluss auf die y-Variable und negative Koeffizienten einen negativen Einfluss.

Analog kann man die Motivation und deren Koeffizient betrachten. Der Koeffizient ist -0,139323 und auch hier ist eine Zunahme der Variable Motivation um eine Einheit für eine Senkung um 0,139323 und damit Verbesserung des Abiturschnitts verantwortlich.

 

Existiert eine Wirkungsvermutung, darf einseitig getestet werden. Dazu ist es notwendig im Vorfeld eine gerichtete Hypothese hergeleitet und formuliert zu haben und eine einseitige Testung auszuweisen. Ein Beispiel für eine gerichtete Hypothese lautet: "Je größer eine Person, desto schwerer ist sie." Ungerichtet würde die Hypothese lauten: "Größe hat einen Einfluss auf das Gewicht einer Person" - hierbei ist aber nicht klar, ob eine positive oder negative Wirkung einer steigenden Körpergröße auf das Gewicht vorliegt. Meist werden Hypothesen gerichtet formuliert, allerdings zweiseitig getestet.
ACHTUNG: wird einseitig getestet, der Koeffizient ist aber umgedreht zur Hypothese, muss jene zwingend verworfen werden.

 

4.3 Vergleich der Koeffizienten

Eine noch zu klärende Frage ist, welche der unabhängigen Variablen einen größeren Einfluss auf die abhängige Variable ausübt. Besonders da der IQ 130 und mehr im Datensatz erreicht, die Motivation aber nur im Bereich von 1-10 liegt, kann hier keine pauschale Aussage auf Basis lediglich der nicht standardisierten Koeffizienten getroffen werden. Hierzu bedarf es der standardisierten Koeffizienten. Diese werden im Rahmen der lm()-Funktion allerdings nicht mit ausgegeben. Man kann sie erhalten, indem man im Vorfeld alle in der Regression verwendeten unabhängigen und die abhängige Variable z-standardisiert.

Eine z-Standardisierung wird mittels der scale()-Funktion durchgeführt. Die Variablen werden also in der lm()-Funktion noch mit scale()- z-standardisiert. Das sieht dann wie folgt aus:


modell <- lm(scale(Abischni)~scale(IQ)+scale(Motivation), data = data_xls)

Hieraus ergibt sich folgender Output:


Call:
lm(formula = ZAbischni ~ ZIQ + ZMotivation, data = data_xls)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.62317 -0.20800 -0.03779  0.20889  0.88794 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept) -1.584e-16  4.580e-02   0.000        1    
ZIQ         -6.109e-01  6.974e-02  -8.759 1.61e-11 ***
ZMotivation -3.990e-01  6.974e-02  -5.722 6.66e-07 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.3271 on 48 degrees of freedom
Multiple R-squared:  0.8973,	Adjusted R-squared:  0.893 
F-statistic: 209.7 on 2 and 48 DF,  p-value: < 2.2e-16

Am Modell und sämtlichen Ergebnisgrößen ändert sich nichts. Nur die Estimates der unabhängigen Variablen ändern sich bei dieser Berechnung. Hier ist erkennbar, dass der IQ einen betragsmäßig größeren Einfluss hat (|-6,109e-01|) als die Motivation (|-3,99e-01|). Er ist nicht ganz doppelt so groß, aber geht tendenziell in diese Richtung.

 

5 Prognose anhand der Regressionsergebnisse

Die Regressionsgleichung auf Basis der nicht standardisierten Koeffizienten lautet für das Beispiel: Abiturschnitt = Konstante + Koeffizient des IQ * IQ + Koeffizient der Motivation * Motivation:

Abiturschnitt= 7,558010 + (-0.039215 *120) + (-0.139323 *7)

Setzt man z,B. 120 als IQ und 7 als Motivation in diese Gleichung ein, erhält man auf Basis des Modells eine geschätzten Abiturschnitt von 1,876949.

 

6 Datensatz zum Download

Weitere nützliche Tutorials findest du auf meinem YouTube-Kanal.

Hinweise zum Einlesen.

 

7 Videotutorials

https://www.youtube.com/watch?v=ef0efKL1Els https://www.youtube.com/watch?v=EUbujtw5Azc
Die mobile Version verlassen