Willkommen bei Stats by Randolph. Hier geht es zur Hauptseite mit weiteren Informationen und Inhalten.

Autor:innen dieser Seite: An den Inhalten dieser Seite haben mitgearbeitet: Markus Janczyk, Eva Röttger und Valentin Koob. Der Inhalt dieser Seite wird in der Lehre in den Studiengängen Psychologie von der AG Forschungsmethoden und Kognitive Psychologie an der Universität Bremen verwendet, steht aber allen Interessierten zur Verfügung. Rückmeldungen/Fehler/Vorschläge können gesendet werden an .

Versionshistory:

  • v1.2: leichte Modifizierung der Herleitung von \(r_{xy}^2\) als Güte der Regression (30.11.2023)
  • v1.1: sprachlich korrigierte und leicht überarbeitete Version (14.9.2023)
  • v1.0: erste online-gestellte Version (21.4.2023)

6 Einfache lineare Regression

Das Ziel der Regressionsrechnung ist es, eine mathematische Gleichung zu finden, die auf kompakte Art und Weise empirische Daten “bestmöglich” beschreibt. Dazu betrachten wir die Beispiele der nächsten Abbildung, in der die Daten von \(n=5\) Personen dargestellt sind, von denen das Alter und die Größe gemessen wurden.

Im linken Teil ist die Korrelation der beiden Variablen mit \(r=1.0\) angegeben und alle Punkte liegen klar auf einer Geraden. Diese Gerade hat die allgemeine Form

\[\text{Größe}=b\cdot\text{Alter}+a\] wobei \(b\) die Steigung und \(a\) der Achsenabschnitt ist. Im rechten Teil der Abbildung ist die die Korrelation der beiden Variablen \(r=0.95\) und natürlich liegen dann nicht mehr alle Daten auf einer Geraden. Dennoch scheint ein linearer Zusammenhang vorzuliegen und die eingezeichnete gestrichelte Gerade scheint eine intuitiv gute und kompakte Zusammenfassung der Daten zu sein, von der manche Datenpunkte nach oben und andere nach unten abweichen. Die Frage, wie \(b\) und \(a\) dieser Geraden gewählt werden müssen, um die Daten “möglichst gut” zu beschreiben, ist Thema dieses Kapitels.

Wir betrachten hier die einfache lineare Regression. Das heißt, wir betrachten lineare Funktionen, die lediglich von einer Variablen (siehe x-Achse) abhängen und damit als Gerade repräsentiert werden können, um eine zweite Variable (siehe y-Achse) zu beschreiben. Beide Variablen müssen bei einer einfachen linearen Regression intervallskaliert sein.

In einem späteren Teil werden wir dann auch Funktionen betrachten, die von mehreren Variablen abhängen, die multiple Regression sowie Zusammenhänge mit einer weiteren Variablen, die auch nicht-linear sein können, also z.B. quadratisch, exponentiell, usw. Zusätzlich lassen wir dann auch Variablen anderen Skalenniveaus zu, was z.B. zur logistischen Regression führt.

6.1 Ziel der Regressionsrechnung und Terminologie

Aus der vorherigen Abbildung wird deutlich, dass es einen Zusammenhang von Korrelation und Regression gibt. Im Detail ist die Sichtweise beider Verfahren aber auch unterschiedlich. Bei der Korrelation wird ein einfacher Zusammenhang zwischen \(X\) und \(Y\) angenommen, während die kausale Richtung unbestimmt bleibt. In der Regression wird hingegen zuweilen eine kausale Richtung unterstellt. Damit verfolgt die Regression auch die Möglichkeit zur Vorhersage des Wertes einer Variablen bei Kenntnis bzw. Annahme eines Wertes auf einer anderen Variablen. Die folgende Abbildung stellt noch einmal die idealisierten Daten da, bei denen alle Datenpunkte auf einer Geraden liegen. In dieser Stichprobe wurde keine vierjährige Person untersucht. Kennen wir allerdings die Geradengleichung können wir berechnen, welche Größe eine Person dieses Alters haben sollte. Dies wird durch die beiden roten gestrichelten Linien veranschaulicht und die Schätzung wäre in etwa eine Größe von \(68.6\) cm.

Andere Beispiele wären:

  • Das Ergebnis eines Einstellungstests wird zur Vorhersage der späteren beruflichen Leistung genutzt. Die Regressionsgerade wird dann anhand der Daten einer Stichprobe berechnet. Unter der Annahme, die Beziehung würde auch für andere Personen gelten, kann allerdings das Ergebnis einer weiteren Person in dem Einstellungstest genutzt werden, um etwas über die (vermutliche) zukünftige berufliche Leistung dieser Person zu erfahren.
  • Ganz ähnlich kann vorgegangen werden, um auf Basis des aktuellen Gesundheitszustandes eine Prognose über die gesundheitliche Entwicklung einer Person abzugeben.

In diesen Beispielen wird eine Variable des einen (früheren) Zeitpunktes zur Vorhersage der Variable des anderen (späteren) Zeitpunktes genutzt. Wenn es tatsächlich eine kausale Verursachung gibt, ist ihre Richtung dann vorgegeben.

  • Das Ausmaß des Fernsehkonsums wird zur Vorhersage des Aggressionspotentials einer Person genutzt.

Hier werden (vermutlich) beide Variablen gleichzeitig erhoben und in diesem Fall wird eine Kausalrichtung unterstellt, wenn es sie überhaupt gibt.

In der Regressionsrechnung gibt es für die Variablen spezielle Namen:

  • Die vorhergesagte Variable wird als Kriterium bezeichnet.
  • Die zur Vorhersage genutzte(n) Variable(n) werden als Prädiktor(en) bezeichnet.
  • Als Regressionsgleichung bezeichnet man die optimale Funktion zur Regression des Kriteriums auf den Prädiktor. Das Kriterium wird also auf den Prädiktor bzw. die Prädiktoren zurückgeführt.

6.2 Bestimmung der optimalen Regressionsgleichung

6.2.1 Grundidee und Terminologie

Wir betrachten nun die folgenden Beispieldaten, die einen positiven, linearen Zusammenhang zwischen den beiden Variablen \(X\) und \(Y\) nahelegen. Dazu legen wir verschiedene Geraden in das Koordinatensystem und überlegen, wie gut diese Geraden die Daten widerspiegeln. Je besser eine Gerade dies tut, umso weniger sollten die Datenpunkte auf der \(y\)-Achse (d.h. auf dem Kriterium) von der Geraden abweichen. Diese Abweichung quantifizieren wir, indem wir für jeden Wert auf dem Prädiktor \(X\) die Differenz des dazugehörigen Wertes auf \(Y\) und des Wertes auf der Geraden bestimmen und die absoluten Differenzen dann aufsummieren. Diese Summe wäre dann ein Maß für die “Gesamtabweichung”.

Als einen 1. Versuch legen wir eine Gerade einfach parallel zur \(x\)-Achse in das Koordinatensystem, bei der vermutlich jede:r zustimmen würde, dass sie die Daten nicht gut repräsentiert (linker Teil der folgenden Abbildung). Danach berechnen wir für jeden Datenpunkt die Abweichung des Datenpunktes von der Geraden in \(y\)-Richtung. Für den Datenpunkt mit \(x=2\) ergibt sich also eine Abweichung von \(3-12=-9\). Der rechte Teil der Abbildung zeigt dies für alle Datenpunkte und die Summe der absoluten Abweichungen ergibt dann \(26\). Diese Zahl ist ein erstes Maß dafür, wie gut die Gerade die Daten repräsentiert: je kleiner die Summe der absoluten Abweichungen, desto besser wäre die Passung. Nun verschieben wir als 2. Versuch die Gerade nach unten (linker Teil der folgenden Abbildung) und berechnen die Abweichungen auf die gleiche Weise. Da die Summe der absoluten Abweichungen kleiner wird, scheint diese Gerade besser geeignet zu sein – auch wenn sie offenbar die Daten trotzdem nicht wirklich gut widerspiegelt. Versuchen wir es als 3. Versuch mit einer Geraden mit negativer Steigung (rechter Teil der folgenden Abbildung) wird die Passung sogar schlechter (was erwartbar ist, da der Zusammenhang ja positiv ist).

Probieren wir es mit einer Geraden mit einer positiven Steigung als 4. und 5. Versuch sehen wir, dass die Summe der absoluten Abweichungen auch direkt kleiner wird. Die exakte Steigung der Geraden hat aber ebenso noch Auswirkungen auf die Passung, wie man im Vergleich der beiden folgenden Abbildungen sehen kann.

Nun wollen wir formalisieren, wie wir an die “beste” Gerade kommen. Der Ausgangspunkt der folgenden Überlegungen ist die allgemeine Geradengleichung \[\hat{Y} = b\cdot X +a \] wobei \(\hat{Y}\) diejenigen Werte auf dem Kriterium sind, die durch die Gerade für die Werte des Prädiktors \(X\) vorhergesagt werden und \(b\) bzw. \(a\) die Steigung bzw. der Achsenabschnitt der Geraden ist. Gesucht werden nun diejenigen Werte für \(b\) und \(a\) mit denen “die Summe der Abweichungen” minimal wird, was dann heißt, dass diese Gerade die Daten “bestmöglich” widerspiegelt.

6.2.2 Rechnerischer Ansatz

In der folgenden Abbildung betrachten wir als Beispiel den 2. Datenpunkt mit den empirischen Koordinaten \((x_2,y_2)\). Der für \(x_2\) von der Gerade vorhergesagte Wert ist dann \(\hat{y}_2\) und dieser Punkt hat entsprechend die Koordinaten \((x_2,\hat{y}_2)\). Als Residuum \(e_i\) bezeichnen wir nun die Distanz zwischen beobachtetem und vorhergesagtem Wert bzgl. der \(y\)-Achse: \[e_i = y_i-\hat{y}_i\]

In Teil 4 (Abschnitt 4.3) hatten wir das Kriterium der kleinsten Quadrate kennengelernt. Statt absoluter Abweichungen (also \(|e_i|\)) werden wir auch hier wieder quadrierte Abweichungen benutzen, das heißt, wir betrachten für jeden Datenpunkt das quadrierte Residuum \(e_i^2\). Insgesamt wollen wir dann erreichen, dass die Summe der quadrierten Residuen möglichst klein wird. Wir nennen diese Summe \(Q\) und setzen für \(e_i^2\) direkt nach obiger Definition \((y_i-\hat{y}_i)^2\) ein: \[Q=\sum_{i=1}^n e_i^2=\sum_{i=1}^n (y_i-\hat{y}_i)^2\]

Nun setzen wir noch für \(\hat{y}_i\) die allgemeine Form der Geradengleichung ein, also \[Q=\sum_{i=1}^n e_i^2=\sum_{i=1}^n (y_i-[b\cdot x_i + a])^2\] und erhalten damit eine Funktion \(Q\), die (für gegebene Werte auf den Variablen \(X\) und \(Y\)) von zwei Variablen abhängig ist, nämlich von \(b\) (der Steigung) und \(a\) (dem Achsenabschnitt): \[Q(b,a)=\sum_{i=1}^n (y_i-[b\cdot x_i + a])^2\]

6.2.3 Minimierung

Der letzte Schritt besteht nun daraus herzuleiten, für welche Werte von \(b\) und \(a\) die Funktion \(Q(b,a)\) ihr Minimum annimmt. Tatsächlich gibt es für jeden Satz an gegebenen Werten für \(X\) und \(Y\) eine eindeutige analytische Lösung. Dazu werden zunächst die partiellen Ableitungen von \(Q(b,a)\) nach \(b\) und nach \(a\) gebildet und gleich Null gesetzt. Dann kann das entstandene Gleichungssystem gelöst werden und es ergeben sich als optimale Werte für \(b\) und \(a\) (eine ShinyApp zum Ausprobieren finden Sie hier und eine ausführliche Herleitung wird hier gezeigt): \[ b=\frac{\text{Kov}(X,Y)}{S_X^2}\text{ und } a=M_Y - b\cdot M_X \] Beide Werte werden auch als Regressionskoeffizienten bezeichnet:

  • \(b\) wird oft als Regressionsgewicht oder Slope bezeichnet, und…
  • \(a\) als Intercept.
nun setzen wir \(b\) und \(a\) in die Ausgangsgerade ein und erhalten damit die Gleichung für die optimale Regressionsgerade (der Schritt von Zeile 3 zu Zeile 4 ist, dass \(\frac{\text{Kov}(X,Y)}{S_X^2}\) ausgeklammert wird): \[\begin{aligned} \hat{Y} & = b\cdot X+a\\\\ & = \underset{b}{\underbrace{\frac{\text{Kov}(X,Y)}{S_X^2}}}\cdot X+ \underset{a}{\underbrace{M_Y - b\cdot M_X}} \\ \\ & = \underset{b}{\underbrace{\frac{\text{Kov}(X,Y)}{S_X^2}}}\cdot X+ \underset{a}{\underbrace{M_Y - \frac{\text{Kov}(X,Y)}{S_X^2}\cdot M_X}} \\\\ &= \frac{\text{Kov}(X,Y)}{S_X^2} \cdot(X-M_X)+M_Y \end{aligned}\] Erinnern wir uns nun noch einmal an die Definition der Korrelation \(r_{XY}\) und formen diese ein wenig um: \[\begin{aligned} r_{XY} &= \frac{\text{Kov}(X,Y)}{S_X\cdot S_Y} \\\\ \Leftrightarrow r_{XY}\cdot S_Y &= \frac{\text{Kov}(X,Y)}{S_X} \quad |\text{ erweitern mit}\frac{1}{S_X}\\\\ \Leftrightarrow r_{XY}\cdot\frac{S_Y}{S_X} &=\frac{\text{Kov}(X,Y)}{S_X^2} \end{aligned}\]

Setzen wir entsprechend für \(\frac{\text{Kov}(X,Y)}{S_X^2}\) nun \(r_{XY}\cdot\frac{S_Y}{S_X}\) in die Gleichung der Regressionsgeraden ein, kann diese Regressionsgerade auch geschrieben werden als: \[ \hat{Y}=r_{XY}\cdot\frac{S_Y}{S_X}\cdot (X-M_X)+M_Y \] Diese Form der Regressionsgeraden hebt die Beziehung zwischen Korrelation und Regression nocheinmal hervor, die wir im folgenden genauer untersuchen werden.

6.2.4 Bemerkungen zur Regressionsgeraden

Die optimale Regressionsgerade hat einige Eigenschaften, die wir hier kurz betrachten:

  1. Wenn ein vollständiger linearer Zusammenhang von \(X\) und \(Y\) vorliegt, also wenn \(|r_{XY}|=1\) ist, dann liegen alle Datenpunkte auf der Regressionsgeraden.
  2. Wenn \(r_{XY}=0\) ist, also wenn kein linearer Zusammenhang von \(X\) und \(Y\) vorliegt, dann entfällt der erste Teil und die Regressionsgleichung reduziert sich zu zu \(\hat{Y}=M_Y\). In diesem Fall verläuft die Regressionsgerade parallel zur \(x\)-Achse und schneidet die \(y\)-Achse bei \(M_Y\). Gleichzeitig heißt das auch, dass für jeden Wert auf \(X\) der gleiche Wert vorhergesagt wird, nämlich \(M_Y\).
  3. Der Betrag der Steigung \(b\) liegt immer zwischen \(0\) und dem Quotienten der Standardabweichungen, also \(0\leq |b| \leq \frac{S_Y}{S_X}\). Zur Erinnerung: Die “Steilheit” einer Punktewolke hing ebenfalls nicht von der Korrelation \(r_{XY}\) ab, sondern vom Verhältnis der Varianzen (bzw. dann natürlich auch der Standardabweichungen).

6.3 Korrelation, Regression und Residuen

Wir betrachten nun einige Zusammenhänge zwischen den Variablen \(X\) und \(Y\), also dem Prädiktor und dem Kriterium, und der Residuenvariable \(E\). Auch hier werden wir sehen, dass uns der Korrelationskoeffizient \(r_{XY}\) wieder begegnen wird.

6.3.1 Zusammenhang von \(Y\) und \(\hat{Y}\)

Zuächst betrachten wir den Mittelwert von \(\hat{Y}\). Da \(\hat{Y}\) ja eine Lineartransformation von \(X\) ist, können wir unter Verwendung der Rechenregeln für den Mittelwert leicht feststellen, dass gilt \[\begin{aligned} M_{\hat{Y}}&=M_{b\cdot X+a}\\ &=b\cdot M_X+a\\ &=b\cdot M_X+M_Y-b\cdot M_X\\ &=M_Y \end{aligned}\] Etwas ähnliches betrachten wir nun für die Varianz von \(\hat{Y}\) \[ S^2_{\hat{Y}}=S^2_{b\cdot X+a}=b^2\cdot S_X^2 \] Weiter oben hatten wir bereits gezeigt, dass \[b=\frac{\text{Kov}(X,Y)}{S_X^2}=r_{XY}\cdot\frac{S_Y}{S_X}\] gilt und wenn wir beide Seiten quadrieren folgt weiter: \[\begin{aligned} b^2 &= \left(r_{XY}\cdot\frac{S_Y}{S_X}\right)^2\\ &= r^2_{XY}\cdot\frac{S^2_Y}{S^2_X} \end{aligned}\] Nun ersetzen wir in der obigen Gleichung zur Varianz von \(\hat Y\) \(b^2\) durch diesen Ausdruck und erhalten: \[\begin{aligned} S^2_{\hat{Y}} &= b^2\cdot S_X^2\\ &= r^2_{XY}\cdot\frac{S^2_Y}{S^2_X}\cdot S_X^2 \\ &= r^2_{XY}\cdot S_Y^2 \end{aligned}\]

Insgesamt ergibt sich also als Mittelwert und Varianz der Variablen \(\hat{Y}\): \[ M_{\hat{Y}}=M_Y\text{ und }S^2_{\hat{Y}}=r_{XY}^2\cdot S_Y^2 \]

  • Der Mittelwert von \(\hat{Y}\) ist also gleich dem Mittelwert von \(Y\).
  • Bei einem perfekten linearen Zusammenhang, ergibt sich \(r^2_{XY}=1\) und dann gilt auch \(S^2_{\hat{Y}}=S_Y^2\). Gibt es keinen linearen Zusammenhang, dann ist \(r^2_{XY}=0\) und entsprechend auch \(S^2_{\hat{Y}}=0\). Dies ergibt Sinn, da in diesem Fall alle von der Regressionsgeraden vorhergesagten Werte \(\hat{Y}\) dem Mittelwert \(M_Y\) entsprechen. Besitzt eine Variable nur eine Ausprägung, dann hat sie auch keine Varianz. Da ansonsten \(0< r^2_{XY}< 1\) gilt, ist die Varianz von \(\hat{Y}\) dann gleich der um das Quadrat der Korrelation geminderten Varianz von \(Y\).

6.3.2 Eigenschaften der Residuenvariablen \(E\)

Als nächstes betrachten wir nun die Residuenvariable \(E\), also die rot-eingezeichneten Linien in der folgenden Abbildung, und bestimmen den Mittelwert und die Varianz von \(E\).

Für den Mittelwert von \(E\) ergibt sich sehr schnell \(M_E=0\): \[\begin{aligned} M_E &=M_{Y-\hat{Y}}\\ &=M_Y-M_{\hat{Y}}\\ &=M_Y-M_Y\\ &=0 \end{aligned}\]

Die Varianz von \(E\) ist etwas schwerer zu bestimmen (die vollständige Herleitung finden Sie hier) und es ergibt sich \[S^2_E=S_Y^2\cdot(1-r^2_{XY})\] Zu \(S_E^2\) sagt man auch Schätzfehlervarianz. Die Wurzel aus ihr wird auch Standardschätzfehler genannt. Zwei Beziehungen können leicht gezeigt werden:

  • Wenn vollständige lineare Abhängigkeit von \(X\) und \(Y\) besteht, dann wird die Varianz der Residuen \(S_E^2=0\), also \(|r_{XY}|=1 \Rightarrow S_E^2=0\)
  • Bei vollständiger linearer Unabhängigkeit entspricht die Varianz der Residuen der Varianz von \(Y\), also \(|r_{XY}|=0 \Rightarrow S_E^2=S_Y^2\).

6.3.3 Kovarianz von \(X\) und \(E\)

Schließlich betrachten wir noch den Zusammenhang von \(X\) und \(E\). In der folgenden Abbildung sind auf der \(x\)-Achse die Werte auf dem Prädiktor \(X\) abgetragen, auf der \(y\)-Achse aber nun die jeweiligen Residuen \(E\). Ein klarer Zusammenhang wie zwischen \(X\) und \(Y\) ist hier nicht mehr erkennbar und dies ergibt auch Sinn, wenn man eine andere Sichtweise auf \(E\) hat: \(E\) geht nämlich, anders gesagt, aus \(Y\) hervor, indem von \(Y\) der “lineare” Trend subtrahiert wird. In der Tat gibt es keinen linearen Zusammenhang zwischen \(E\) und \(X\): \[\begin{aligned} \text{Kov}(X,E) &= \text{Kov}(X,Y-\hat{Y})\\ &= \text{Kov}(X,Y)-\text{Kov}(X,\hat{Y})\\ &=\text{Kov}(X,Y)-\text{Kov}(X,b\cdot X+a)\\ &=\text{Kov}(X,Y)-b\cdot \text{Kov}(X,X)\\ &=\text{Kov}(X,Y)-\frac{\text{Kov}(X,Y)}{S_X^2}\cdot S_X^2\\ &=\text{Kov}(X,Y)-\text{Kov}(X,Y)\\ &=0 \end{aligned}\] Daraus folgt auch, dass es keinen linearen Zusammenhang zwischen \(E\) und \(\hat{Y}\) gibt: \[\begin{aligned} \text{Kov}(\hat{Y},E) &= \text{Kov}(b\cdot X+a,E)\\ &= b\cdot\text{Kov}(X,E)\\ &= 0 \end{aligned}\]

6.4 “Güte” der Regressionsgleichung

Im Prinzip kann für jeden Satz an Werten für die Variablen \(X\) und \(Y\) eine Regressionsgerade bestimmt werden, die die Daten bestmöglich repräsentiert. Dies bedeutet aber noch nicht, dass die Regressionsgerade auch wirklich “gut” ist. Die Vorarbeiten aus Abschnitt 3 ermöglichen nun leicht die Herleitung einer wichtigen Beziehung. Diese wird uns dem Konzept der Varianzaufklärung näherbringen und eine Zahl liefern, die eine relative Auskunft darüber gibt, wie gut die Regressionsgerade die Daten repräsentiert.

Aus der Defnition der Residuen folgt zunächst \[ E=Y-\hat{Y}\Leftrightarrow Y=\hat{Y}+E \] Das heißt, dass die Varianz von \(Y\) gleich der Varianz von \(\hat{Y}+E\) ist und unter Verwendung der Rechenregeln für die Varianz folgt dann: \[ S_Y^2=S^2_{\hat{Y}+E}=S^2_{\hat{Y}}+S_E^2+2\cdot \text{Kov}(\hat{Y},E) \] Zusätzlich haben wir am Ende des letzten Abschnitts gezeigt, dass \(\text{Kov}(\hat{Y},E)=0\) ist, und damit vereinfacht sich die letzte Gleichug zu: \[S_Y^2=S^2_{\hat{Y}}+S_E^2\] In Worten heißt dies, dass sich die Varianz von \(Y\) additiv zusammensetzt aus der Varianz der vorhergesagten Werte \(\hat{Y}\) und der Varianz der Residuen \(E\). Dies ist ein Beispiel für eine sog. Varianzaufteilung. Hier wird die Varianz von \(Y\) aufgeteilt in…

  • …einen durch das statistische Modell, das heißt hier, durch die lineare Beziehung, aufgeklärten Varianzanteil \(S^2_{\hat{Y}}\) und…
  • …einen verbleibenden nicht aufgeklärten Anteil, nämlich die Fehlervarianz \(S_E^2\).

Im Extremfall, wenn alle Datenpunkte auf der Regressionsgeraden liegen, gilt zunächst \(|r_{XY}|=1\). Das heißt aber auch, dass alle Residuen Null sind und die Variable \(E\) daher keine Varianz besitzt, also \(S_E^2=0\) ist. In diesem Fall gilt dann weiter:

\[\begin{aligned} S_Y^2 &= S^2_{\hat{Y}}+S_E^2\\ &= S^2_{\hat{Y}}+0\\ &= S^2_{b\cdot X+a}\\ &= b^2\cdot S_X^2 \end{aligned}\]

In diesem Fall ist die Varianz von \(Y\) also bis auf den Faktor \(b^2\) gleich der Varianz von \(X\), das heißt, die Varianz von \(Y\) ist vollständig determiniert (bestimmt) durch die Varianz der Werte auf \(X\). In diesem Fall wird auch gesagt, die Varianz von \(Y\) würde vollständig durch die Varianz von \(X\) aufgeklärt werden.

Im Regelfall ist aber die Korrelation \(|r_{XY}|<1\) und daher gibt es auch eine positive Varianz der Residuen, also \(S_E^2>0\). In diesem Fall ist die Varianz von \(\hat{Y}\) aber nach wie vor vollständig durch die lineare Beziehung, also durch das statistische Modell, aufgeklärt (es liegen ja alle Punkte von \(\hat{Y}\) auf der Geraden). Als Maß der Varianzaufklärung berechnen wir nun den Anteil der durch die lineare Beziehung aufgeklärten Varianz (also \(S^2_{\hat{Y}}\)) an der Gesamtvarianz von \(Y\), also \(S_Y^2\): \[\frac{S^2_{\hat{Y}}}{S_Y^2}\left[=\frac{S^2_{\hat{Y}}}{S^2_{\hat{Y}}+S_E^2}\right]\] Da beide Werte nie negativ sind und die Varianz im Zähler nie größer sein kann als die Varianz im Nenner, liegt der Bruch immer im Interval \([0,1]\). Je mehr Varianz aufgeklärt wird (d.h., je größer \(S^2_{\hat{Y}}\) und je kleiner \(S_E^2\) wird), desto mehr geht der Bruch gegen 1. Das heißt, dass ein höherer Wert für mehr Varianzaufklärung durch das statistische Modell (hier also die Regressionsgerade) spricht.

Weiter oben hatten wir eingeführt, dass \[S^2_{\hat{Y}}=r^2_{XY}\cdot S_Y^2\] gilt. Wenn wir diese Gleichung umstellen, wird wieder eine Beziehung zur Korrelation deutlich: \[\frac{S_\hat{Y}^2}{S_Y^2}=r^2_{XY}\] Die quadrierte Korrelation von Kriterium \(Y\) und Prädiktor \(X\), also \[r^2_{XY}\] wird als Determinationskoeffizient bezeichnet und ist im Fall der einfachen linearen Regression also ein Maß für die Varianzaufklärung. Für die Beispieldaten, die wir weiter oben verwendet haben, ergibt sich \[r^2_{XY}=0.652\] Es ist dann üblich zu sagen, 65.2% der Varianz von \(Y\) würden durch die Varianz von \(X\) aufgeklärt werden. Als Hinweis bereits an dieser Stelle sei schon einmal vorweg genommen, dass \(r^2_{XY}\) ein Spezialfall des allgemeineren Maßes \(R^2\) ist (welches wir im Kontext multiple Regression einführen werden, und welches auch in Outputs von R zu sehen ist).

6.5 Rechnerische Durchführung

In diesem Abschnitt demonstrieren wir zunächst die rechnerische Durchführung per Hand unter Verwendung der Formeln. Anschließend demonstrieren wir die entsprechende Variante mit R und der Funktion lm(). Dazu benutzen wir die folgenden Beispieldaten von \(n=10\) Personen, von denen zwei Variablen \(X\) (als Prädiktor) und \(Y\) (als Kriterium) erhoben wurden:

Diese Daten sind als Punktewolke in der folgenden Abbildung dargestellt. Die blaue gestrichelte Linie ist die optimale Regressionsgerade die sich aus der Gleichung \[ \hat{Y}=-1.461\cdot X+20.051 \] ergibt.

6.5.1 Berechnung von Hand

Eine Hilfe beim händischen Berechnen der Regressionskoeffizienten, sind die alternativen Berechnungsarten für die Kovarianz und die Varianz. Dazu erstellen wir aus den Rohdaten eine Tabelle, in der wir zunächst die beiden Variablen \(X^2\) und \(X\cdot Y\) berechnen und dann von allen Variablen die Mittelwerte:

Nun können wir leicht die Kovarianz von \(X\) und \(Y\) bestimmen als \[\begin{aligned} \text{Kov}(X,Y) &= M_{XY}-M_X\cdot M_Y \\ &= 57.7-5.1\cdot 12.6\\ &= -6.56 \end{aligned}\] und ebenso die Varianz von \(X\): \[\begin{aligned} S_X^2 &= M_{X^2}-(M_X)^2\\ &= 30.5-5.1^2\\ &= 4.49 \end{aligned}\] Diese Werte setzen wir nun in die Formeln für \(b\) und \(a\) ein und erhalten \[\begin{aligned} b &= \frac{\text{Kov}(X,Y)}{S_X^2}\\\\ &= \frac{-6.56}{4.49}\\\\ &= -1.461 \end{aligned}\] und \[\begin{aligned} a &= M_Y-b\cdot M_X\\\\ &= 12.6+1.461\cdot 5.1\\\\ &= 20.051 \end{aligned}\]

Zum Vergleich demonstrieren wir kurz die Anwendung der Formeln direkt in R:

# Ausgangsdaten
X <- c( 1,  3,  5,  4,  6,  4, 7,  8, 5, 8)
Y <- c(19, 18, 14, 13, 15, 12, 9, 10, 9, 7)

# neue Variablen berechnen
XY <- X * Y     # X mal Y
X2 <- X^2       # X-Quadrat

# dann daraus Kovarianz von X und Y und die Varianz von X berechnen  
kov.XY <- mean(XY) - mean(X) * mean(Y)
varianz.X <- mean(X2) - mean(X)^2

# als Koeffizienten ergeben sich dann
b <- kov.XY / varianz.X     # Regressionsgewicht / Steigung
a <- mean(Y) - b * mean(X)  # Intercept / Achsenabschnitt

# formatiert schön ausgeben könnte man die Werte so:
paste0("Regressionsgewicht b = ", round(b,3), "  Intercept = ", round(a,3))
## [1] "Regressionsgewicht b = -1.461  Intercept = 20.051"

6.5.2 Berechnung mit der R-Funktion lm()

Viele Regressionen werden mit der Funktion lm() berechnet, wobei der Name der Funktion für linear model steht. Diese Funktion benutzt die Modellsprache von R, die wir daher hier nun einführen werden. Tatsächlich ist diese Sprache sehr mächtig und viele Funktionen können auf diese Art und Weise benutzt werden.

Das Beispiel der einfachen linearen Regression kann auch formuliert werden als: “Das Kriterium soll durch den Prädiktor modelliert werden”. Derartige Formulierungen werden uns später immer wieder begegnen, und es ist ratsam, sich die Modellsprache daher anzugewöhnen. Das Beispiel der einfachen linearen Regression wird formuliert als: \[ \text{Kriterium ~ Prädiktor(en)} \] Links der Tilde steht also die Variable, die modelliert werden soll (hier das Kriterium) und rechts steht die Variable, die zur Modellierung genutzt werden soll (hier also ein Prädiktor). Da üblicherweise die Daten als DataFrame vorliegen, legen wir einen solchen zunächst unter dem Namen daten an und arbeiten dann damit weiter:

# Ausgangsdaten
X <- c( 1,  3,  5,  4,  6,  4, 7,  8, 5, 8)
Y <- c(19, 18, 14, 13, 15, 12, 9, 10, 9, 7)

daten <- data.frame(X,Y)     # Zusammenfassung zu einem DataFrame
head(daten, n = 3)           # die ersten 3 Zeilen ausgeben

Der Funktion lm() werden dann im einfachsten Fall zwei Dinge übergeben, nämlich zum einen die Modellgleichung und zum anderen der DataFrame, in dem die Variablen der Modellgleichung zu finden sind:

# Berechnung der Regression mit lm():
modell <- lm(Y ~ X,          # Y modelliert durch X
             data = daten)   # welcher Datensatz?
modell                       # gibt  bereits die Koeffizienten aus...
## 
## Call:
## lm(formula = Y ~ X, data = daten)
## 
## Coefficients:
## (Intercept)            X  
##      20.051       -1.461

Unter (Intercept) finden wir den Achsenabschnitt, also den Wert für \(a\), und unter X (der Name des Prädiktors) finden wir das Regressionsgewicht, also \(b\).

Auf die Koeffizienten können wir auch direkt zugreifen, da diese im Objekt modell (also dem Ergebnis von lm()) gespeichert sind. Da dies ein Vektor ist, können wir sogar die einzelnen Werte auslesen und für weitere Analysen verwenden:

modell$coefficients    # gibt auch die Koeffizienten aus (als Vektor)
## (Intercept)           X 
##   20.051225   -1.461024
modell$coefficients[1] # nur Intercept a
## (Intercept) 
##    20.05122
modell$coefficients[2] # nur Steigung  b
##         X 
## -1.461024

Es gibt noch eine Reihe weiterer nützlicher Funktionen, die wir auf das Ergebnis der Funktion lm() anwenden können. Zum Beispiel können wir sehr leicht mit der Funktion predict() die von der Regressionsgeraden vorhergesagten Werte, also \(\hat{Y}\) berechnen:

predict(modell)
##         1         2         3         4         5         6         7         8 
## 18.590200 15.668151 12.746102 14.207127 11.285078 14.207127  9.824053  8.363029 
##         9        10 
## 12.746102  8.363029

Da die Residuen ja die Differenz der empirischen und der vorhergesagten Werte sind, \(E=Y-\hat{Y}\), können wir auch diese leicht berechnen:

daten$Y - predict(modell)
##          1          2          3          4          5          6          7 
##  0.4097996  2.3318486  1.2538976 -1.2071269  3.7149220 -2.2071269 -0.8240535 
##          8          9         10 
##  1.6369710 -3.7461024 -1.3630290

Natürlich gibt es mit resid() auch eine Funktion zur Bestimmung der Residuen und sie sind auch direkt im Ergebnis von lm() gespeichert. Die Residuen werden wir im nächsten Abschnitt zur Berechnung der sog. Partialkorrelation benötigen:

resid(modell)   # oder: modell$residuals
##          1          2          3          4          5          6          7 
##  0.4097996  2.3318486  1.2538976 -1.2071269  3.7149220 -2.2071269 -0.8240535 
##          8          9         10 
##  1.6369710 -3.7461024 -1.3630290

Eine vollständige Auswertung erhalten wir mit der Funktion summary(). Diese liefert aber eine Reihe von Details, die wir erst später kennenlernen werden.

summary(modell)
## 
## Call:
## lm(formula = Y ~ X, data = daten)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.7461 -1.3241 -0.2071  1.5412  3.7149 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   20.051      1.988  10.085 7.97e-06 ***
## X             -1.461      0.360  -4.058  0.00364 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.412 on 8 degrees of freedom
## Multiple R-squared:  0.6731, Adjusted R-squared:  0.6322 
## F-statistic: 16.47 on 1 and 8 DF,  p-value: 0.003642

In der Ausgabe erkennen wir aber die Regressionskoeffizienten auch wieder. Zudem finden wir die Angabe Multiple R-squared: 0.6731. Wir hatten weiter oben schon angemerkt, dass der Determinationskoeffizient \(r_{XY}^2\) ein Spezialfall (nämlich im Fall der einfachen linearen Regression) genau dieses allgemeineren \(R^2\) ist. Dies können wir leicht überprüfen, indem wir den Determinationskoeffizienten berechnen und mit dem angegebenen \(R^2\) vergleichen:

cor(daten$X, daten$Y)^2       # Determinationskoeffizient
## [1] 0.6730562
summary(modell)$r.squared     # R^2 der Funktion lm()
## [1] 0.6730562

6.6 Partialkorrelation

Die folgende Abbildung visualisiert Daten, bei denen eine Berechnung der Korrelation über alle Personen hinweg zu einer Fehlbeschreibung führt. An allen Personen wurden zum Einen die Variablen \(X\) und \(Y\) erhoben. Über alle Personen hinweg ergibt sich dann eine positiver linearer Zusammenhang:

cor(X, Y)  # Korrelation zwischen X und Y
## [1] 0.8724247

Allerdings wurde auch eine dritte Variable \(Z\) erhoben und die Punkte der Punktwolke wurden eingefärbt, je nachdem welchen Wert eine Person auf dieser Variable geliefert hat. Betrachten wir nun diese Teil-Stichproben (also jeweils nach den Farben getrennt), dann wird klar, dass innerhalb jeder Teil-Stichprobe der Zusammenhang negativ ist, nämlich \(r=-0.56\). Tatsächlich gibt es auch einen Zusammenhang von \(Z\) mit \(X\) und \(Y\):

cor(X, Z)  # Korrelation zwischen X und Z
## [1] 0.9582385
cor(Y, Z)  # Korrelation zwischen Y und Z
## [1] 0.9582385

Um eine richtige Einschätzung des Zusammenhangs von \(X\) und \(Y\) zu erhalten, ist also eine Betrachtung nach Teilstichproben nötig. Statistisch wird dann versucht, den Einfluss einer (dritten) Variablen, hier also \(Z\), loszuwerden bzw. sie “auszupartialisieren”. Im vorliegenden Fall ist dafür die Partialkorrelation geeignet.

Eine Partialkorrelation liefert uns also den linearen Zusammenhang von \(X\) und \(Y\), wenn der lineare Zusammenhang zu einer dritten Variablen \(Z\) ausgeschaltet wurde. Dazu bedienen wir uns nun der einfachen linearen Regression, die wir in diesem Teil kennengelernt haben. Dies tun wir, da sie uns ja eben genau den linearen Anteil eines Prädiktors an einem Kriterium liefert. In unserem Fall ist nun also \(Z\) der Prädiktor und wir benutzen \(X\) und \(Y\) als Kriterium jeweils einer einfachen linearen Regression:

  • \(X\) als Kriterium, \(Z\) als Prädiktor: \[\hat{X}=\frac{\text{Kov}(X,Z)}{S^2_Z}(Z-M_Z)+M_X\]
  • \(Y\) als Kriterium, \(Z\) als Prädiktor: \[\hat{Y}=\frac{\text{Kov}(Y,Z)}{S^2_Z}(Z-M_Z)+M_Y\]

\(\hat{X}\) und \(\hat{Y}\) sind also nun die Variablen, die die lineare Beziehung zu \(Z\) widerspiegeln. Wie kommen wir nun an \(X\) und \(Y\) ohne genau diese lineare Beziehung zu \(Z\)? Indem wir von \(\hat{X}\) von \(X\) und \(\hat{Y}\) von \(Y\) subtrahieren, also die Residuen der beiden Regressionen betrachten: \[E_X=X-\hat{X}\hspace{0.5cm}\text{und}\hspace{0.5cm}E_Y=Y-\hat{Y}\] \(E_X\) und \(E_Y\) sind also \(X\) und \(Y\), aber vom linearen Einfluss von \(Z\) befreit.

Die Partialkorrelation \(r_{XY\cdot Z}\) ist nun die Korrelation der beiden Residuenvariablen, also: \[ r_{XY\cdot Z}=r_{E_X E_Y} \] Hier können wir natürlich auch die entsprechenden Werte einsetzen und durch einige Umformungen, gelangen wir zur folgenden Form: \[ r_{XY\cdot Z}=r_{E_X E_Y}=\frac{r_{XY}-r_{XZ}\cdot r_{YZ}}{\sqrt{1-r^2_{XZ}}\cdot\sqrt{1-r^2_{YZ}}} \] Dies können wir in R demonstrieren, indem wir zunächst die beiden Residuenvariablen speichern und dann deren Korrelation berechnen:

E_X <- resid(lm(X~Z))   # Residuum der Regression von X auf Z
E_Y <- resid(lm(Y~Z))   # Residuum der Regression von Y auf Z
cor(E_X, E_Y)           # Korrelation der Residuenvariablen
## [1] -0.56

Natürlich gibt es auch Funktionen zur Berechnung der Partialkorrelation. Eine Möglichkeit besteht in der Funktion pcor.test() aus dem Paket ppcor. Das Ergebnis ist unter estimate zu finden:

library(ppcor)
pcor.test(X, Y, Z)

Eine implizite Annahme bei der Partialkorrelation ist, dass unter jeder Stufe von \(Z\) die Korrelation von \(X\) und \(Y\) identisch ist. Im obigen Beispiel ist dies der Fall. Die nächste Abbildung visualisiert ein Beispiel, wo dies allerdings nicht der Fall ist und in diesem Fall liefert die Partialkorrelation ein schwer zu interpretierendes Ergebnis.

Obwohl über alle Punkte hinweg wieder eine positive Korrelation vorliegt, ist die Partialkorrelation nun \(r_{XY\cdot Z}=0\):

cor(X, Y)             # positive Korrelation über alle Daten hinweg
## [1] 0.9182209
pcor.test(X, Y, Z)    # ... aber Partialkorrelation ist jetzt 0