Pearson-Korrelationskoeffizient in R berechnen

von | Sep 9, 2020 | Korrelation, R

Ziel des Pearson-Korrelationskoeffizienten in R

Der Pearson-Korrelationskoeffizient nach bzw. Bravais-Pearson-Korrelationskoeffizient hat das Ziel einen ungerichteten Zusammenhang zwischen zwei metrischen Variablen zu untersuchen. Er zeigt entweder einen positiven Zusammenhang, einen negativen Zusammenhang oder gar keinen Zusammenhang zwischen den Variablen. In der Nullhypothese geht er von keinem Zusammenhang aus.

 

Voraussetzungen des Pearson-Korrelationskoeffizienten in R

  • zwei metrisch skalierte Variablen, im Zweifel kann auch eine Korrelation nach Spearman oder Kendall-Tau gerechnet werden.
  • bivariate Normalverteilung
  • Häufig genannt: Linearität – gerade das untersucht man mit der Pearson-Korrelation aber ohnehin

Sind die Voraussetzungen nicht erfüllt und ihr wollte dennoch korrelieren, schaut im Beitrag zur richtigen Wahl des Korrelationskoeffizienten nach Alternativen.

 

Vorgehen im Detail in folgendem Video meines YouTube-Kanals

Dieses Video ansehen auf YouTube.

 

Voraussetzungsprüfung für den Pearson-Korrelationskoeffizienten

Metrische Variablen

Metrische Variablen sind daran zu erkennen, das die Abstände zwischen den Ausprägungen gleich sind und diese auch als solche interpretiert werden können. Variablen wie Größe, Gewicht, € usw. erfüllen dieses Kriterium. Es ist häufig auch zulässig Skalen, die aus mehreren Items zusammengesetzt sind (z.B. via Mittelwert), als quasi-metrisch einzustufen. Eine Korrelation nach Pearson kann in solchen Fällen auch gerechnet werden.  

 

Bivariate Normalverteilung

Bivariate Normalverteilung (auch zweidimensionale Normalverteilung) beschreibt eine Normalverteilung der einen Variable für jeden Wert der anderen Variable. In R kann diese mittels des MVN-Pakets geprüft werden. Behelfsweise kann man univariate Normalverteilungen der beiden Variablen prüfen. Hierzu ist es genügend über die hist()-Funktion ein Histogramm je Variable zu erzeugen und zu beurteilen. Erkennt man hier in etwa Normalverteilung kann man mit der eigentlichen Korrelation nach Pearson fortfahren.  

 

Grafische Darstellung des Zusammenhanges in R

Parallel zu jeder Korrelation nach Pearson kann eine kleine Visualisierung des Zusammenhanges mittels Streudiagramm erfolgen. Das funktioniert mit dem plot()-Befehl: Für weitere grafische Anpassungen  gibt es diesen Beitrag. Ich stelle hier den Zusammehang zwischen Gewicht und Größe dar.

plot(data_xls$Gewicht, data_xls$Größe)

Im Ergebnis erhält man folgendes Diagramm:

Pearson Streudiagramm R

Erkennbar ist, das mit zunehmendem Gewicht auch die Größe zunimmt. Ein positiver Zusammenhang ist also naheliegend. Wie stark ist dieser allerdings? Dazu berechnet man den Pearson-Korrelationskoeffizient.

 

Berechnung der Korrelation nach Pearson in R

Die Korrelation nach Pearson ist zunächst denkbar einfach über die cor()-Funktion. Ich korreliere nun Gewicht und Größe miteinander. Da ich den Dataframe nicht mit der attach-Funktion angehängt habe, verwende ich jeweils „data_xls$“ für die Variable. Ein weiteres Argument braucht es innerhalb der cor()-Funktion nicht. 

cor(data_xls$Gewicht, data_xls$Größe)

Als Ergebnis bekommt man: 0,6692971.  

 

Interpretation der Ergebnisse der Korrelation nach Pearson in R

Nach der Durchführung der obigen Zeile erhalte ich einen nüchternen Output, der nur aus einer Zahl besteht und den Korrelationskoeffizienten angibt. In diesem Fall ist er 0,6692971. Eine Einordnung dessen erfolgt im Kapitel Ermittlung der Effektstärke. Was hier jedoch fehlt, ist die Signifikanz. Sofern sie gefordert ist, muss man sie sich zusätzlich ausgeben lassen. Das funktioniert mit der cor.test()-Funktion. Auch hier wird standardmäßig die Pearson-Korrelation gerechnet und ein weiteres Argument ist nicht notwendig:

cor.test(data_xls$Gewicht, data_xls$Größe)

Der Output hierfür ist etwas umfangreicher:

Pearson’s product-moment correlation data:

data_xls$Gewicht and data_xls$Größe

t = 6.3057, df = 49, p-value = 7.895e-08

alternative hypothesis: true correlation is not equal to 0

95 percent confidence interval: 0.4827566 0.7977398

sample estimates: cor 0.6692971

 

 

Fett markiert sind die wesentlichen Ergebnisse. Der untere Wert (cor) ist der Korrelationskoeffizient nach Pearson, der logischerweise immer noch 0,6692971 beträgt. Neu ist nun etwas weiter oben allerdings die Signifikanz. Die Signifikanz ist mit p=7,895e-08 sehr klein, genauer gesagt ist sie 0,00000007895. Sie ist also sehr sehr viel kleiner als die typische Verwerfungsgrenze von 0,05. Die Nullhypothese keines Zusammenhanges kann demnach verworfen werden. Folglich wird die Alternativhypothese eines korrelativen Zusammenhanges zwischen Gewicht und Größe angenommen.

Achtung: Eine Kausalität bedeutet das nicht. Es geht bei der Korrelation lediglich um das gleichzeitige Auftreten hoher und niedriger Ausprägungen beider Variablen.  

 

Gerichtete Hypothese und einseitiges Testen

Achtung: Wenn bereits eine Wirkungsvermutung vor dem Test existiert – die plausible Annahme, dass größere Menschen schwerer sind oder schwerere Menschen größer sind – dann würde man 1-seitig testen. Hierzu darf die Signifikanz halbiert werden und ebenfalls mit dem Niveau von 0,05 verglichen werden. In diesem Falle ändert sich entsprechend nichts an der Aussage der Verwerfung der Nullhypothese.

 

Wer die Signifikanz nicht händisch teilen möchte, kann natürlich auch in R das entsprechende Argument der cor.test()-Funktion hinzufügen. Das Argument heißt alternative und lässt den Nutzer die Alternativhypothse definieren. Es gibt die Möglichkeiten alternative=“greater“ und alternative=“less“. Das kann verwirrend sein, denn „greater“ steht für einen positiven Zusammenhang und „less“ für einen negativen Zusammenhang. Am konkreten Beispiel unterstelle ich im Vorfeld einen positiven Zusammenhang:

cor.test(data_xls$Gewicht, data_xls$Größe, alternative=“greater“)

 

 

Das Ergebnis ist sehr ähnlich zu oben. Änderungen habe ich fett hervorgehoben:

Pearson’s product-moment correlation data:

data_xls$Gewicht and data_xls$Größe

t = 6.3057, df = 49, p-value = 3.948e-08

alternative hypothesis: true correlation is greater than 0

95 percent confidence interval: 0.5168666 1.0000000

sample estimates: cor 0.6692971

 

 

Die Pearson-Korrelation ist natürlich mit 0,6692971 unverändert. Allerdings sieht man, dass sich die Signifikanz von p=7,895e-08 auf p=3,948e-08 halbiert hat. Das ist Folge des einseitigen Testens. Zusätzlich ist die nun anzunehmende Alternativhypothese eindeutig formuliert. Korrelation ist größer 0 (true correlation is greater than 0) bedeutet, dass auf eine positive Korrelation vorliegt.

 

Ermittlung der Effektstärke des Pearson-Korrelationskoeffizienten

Die Effektstärke ist im Rahmen der Korrelation der Korrelationskoeffizient r selbst. Laut Cohen: Statistical Power Analysis for the Behavioral Sciences (1988), S. 79-81 sind die Effektgrenzen

  • 0,1-0,3 (schwach),
  • 0,3-0,5 (mittel) und
  • größer 0,5 (stark).

Im vorliegenden Beispiel ist die Effektstärke mit 0,6692971> 0,5 und damit stark. Es handelt sich also um eine starke Korrelation zwischen Einkommen und Motivation.

 

Hat dir der Beitrag geholfen?

Dann würde ich mich über eine kleine Spende freuen, die es mir erlaubt, weiterhin kostenfreie Inhalte zu veröffentlichen.

Vielen Dank und viel Erfolg!

Über mich

Björn Walther

Excel- und SPSS-Experte

YouTube-Kanal

Excel Online-Kurs

YouTube-Kanal