R-squared (R2) ist eine Feh­ler­me­trik der Statistik, die ins­be­son­de­re für die Messung der Güte von linearen Re­gres­sio­nen genutzt wird. In der R-Pro­gram­mie­rung kann sie durch einen einfachen Funk­ti­ons­auf­ruf errechnet werden.

Wofür ist R-squared in R wichtig?

R-squared ist ein sta­tis­ti­sches Maß, das die Qualität der Anpassung eines linearen Re­gres­si­ons­mo­dells an die Daten misst. Er nimmt Werte zwischen 0 und 1 an und ist ein zentrales Maß für die Güte von Re­gres­si­ons­mo­del­len.

Eine R-squared-In­ter­pre­ta­ti­on gibt Auf­schluss darüber, wie dicht die be­ob­ach­te­ten Daten an einer er­rech­ne­ten Re­gres­si­ons­ge­ra­de liegen. Hierbei gilt: Je höher der R-squared-Wert, desto besser erklärt das Modell die Daten. Ein niedriger R-squared-Wert weist auf eine schlechte Mo­dell­an­pas­sung hin.

Tipp

Mit R können Sie eine ganze Reihe ver­schie­de­ner An­wen­dun­gen pro­gram­mie­ren. Wenn Sie eine davon hosten wollen, bietet sich ein eigener Webspace an. Bei IONOS können Sie einen Webspace mieten, der dank ver­schie­de­ner Tarife Ihren in­di­vi­du­el­len Be­dürf­nis­sen gerecht wird.

R-squared in R mit linearer Re­gres­si­on

R-squared in R wird häufig im Kontext der linearen Re­gres­si­on verwendet. Da es sich bei R um eine Pro­gram­mier­spra­che handelt, die oft in der Statistik Anwendung findet, ist es nicht ver­wun­der­lich, dass es ver­schie­de­ne R-Funk­tio­nen gibt, die bei der Be­rech­nung helfen:

x <- c(1, 2, 3, 4, 5)
y <- c(2, 4, 5, 4, 5)
# Lineare Regression
model <- lm(y ~ x)
R

Im obigen Code­bei­spiel wurden zunächst zwei R-Vektoren namens x und y erstellt, die die Da­ten­sät­ze enthalten, auf denen die lineare Re­gres­si­on durch­ge­führt werden soll. Die abhängige Variable ist in diesem Falle die Variable y. Das Re­gres­si­ons­mo­dell wird im Anschluss mit der R-Funktion lm() berechnet und in der Variable model ge­spei­chert.

Calculate R-squared in R: R2 in R berechnen

Der R2-Wert in R kann mithilfe einer Funktion errechnet werden. Hierfür benötigen Sie keine tie­fer­ge­hen­den Ma­the­ma­tik­kennt­nis­se, sondern lediglich das Wissen darum, wie Sie die richtige Funktion anwenden. Dies ist selbst dann ein Kin­der­spiel, wenn sie gerade erst das Pro­gram­mie­ren erlernen.

Die Funktion, die genutzt werden kann, um das sta­tis­ti­sche Maß zu errechnen, heißt summary(). Wie der Name schon andeutet, liefert sie eine Zu­sam­men­fas­sung der Re­gres­si­ons­ana­ly­se, darunter auch den R-squared-Wert. Folgendes Code­bei­spiel, das auf der bereits er­rech­ne­ten linearen Re­gres­si­on aufbaut, zeigt die summary()-Funktion im Einsatz:

# R-squared-Wert abrufen
summary(model)$r.squared
R

Mit diesem Code können Sie den R-squared-Wert aus dem linearen Re­gres­si­ons­mo­dell lm_model ex­tra­hie­ren. Der R-squared-Wert gibt an, wie gut das Modell die Variation in der ab­hän­gi­gen Variable y erklärt, basierend auf der un­ab­hän­gi­gen Variable x.

Im obigen Code­bei­spiel wird die summary()-Funktion auf das bereits er­rech­ne­te Re­gres­si­ons­mo­dell an­ge­wen­det. Gleich­zei­tig wird der R-Operator $ genutzt, um sich aus den Werten, die der Funk­ti­ons­auf­ruf zu­rück­lie­fert, nur den R-squared-Wert anzeigen zu lassen. In unserem Beispiel beträgt der Wert 0,6.

Tipp

Sie möchten tiefer in die Welt der R-Pro­gram­mie­rung ein­tau­chen? Unsere Rat­ge­ber­ar­ti­kel helfen Ihnen dabei:

R-squared-Wert: In­ter­pre­ta­ti­on

Nachdem der R-squared-Wert bestimmt wurde, stellt sich die Frage, wie das Ergebnis zu in­ter­pre­tie­ren ist. Hierbei bietet es sich an, bestimmte In­ter­val­le, die der Wert annehmen kann, zu be­trach­ten. Wie bereits gesagt, liegt der Wer­te­be­reich des R2-Wertes zwischen 0 und 1.

  • 0 (keine Anpassung): Ein R-squared-Wert von 0 bedeutet, dass das Modell überhaupt nicht zu den Daten passt. Zwischen den un­ter­such­ten Variablen liegt in diesem Falle kein linearer Zu­sam­men­hang vor.
  • 1 (perfekte Anpassung): Ein R-squared-Wert von 1 zeigt an, dass alle Be­ob­ach­tun­gen perfekt auf der Re­gres­si­ons­ge­ra­den liegen. Dies ist äußerst selten und kann unter Umständen auf Over­fit­ting hinweisen.
  • 0,7 bis 0,9 (gute Anpassung): Ein R-squared-Wert in diesem Intervall deutet darauf hin, dass das Modell mit hoher Wahr­schein­lich­keit ein Modell ist, das die Daten aus­rei­chend gut be­schreibt.
  • 0,5 bis 0,7 (ak­zep­ta­ble Anpassung): Ein R-squared-Wert im Bereich von 0,5 bis 0,7 ist ak­zep­ta­bel, weist aber darauf hin, dass es noch Luft nach oben gibt. Das zu­ge­hö­ri­ge Modell kann also noch ver­bes­sert werden.
  • Unter 0,5 (schlechte Anpassung): Ein R-squared-Wert unter 0,5 zeigt, dass das er­rech­ne­te Modell die zu­grun­de­lie­gen­den Daten nicht aus­rei­chend genau be­schreibt. In diesem Falle sollte das Modell auf jeden Fall angepasst werden, um aus­sa­ge­kräf­ti­ge Er­geb­nis­se zu erhalten.
Hinweis

Ein hoher R-squared-Wert allein reicht nicht aus, um die Qualität Ihres Modells zu be­ur­tei­len. Daher sollten auch andere Faktoren wie die Mo­dell­va­li­die­rung, die Analyse der Residuen und die Anpassung an die spe­zi­fi­schen An­for­de­run­gen der Daten beachtet werden, wenn es darum geht, die Güte eines Re­gres­si­ons­mo­del­les zu bestimmen. Die bereits gezeigte summary()-Funktion gibt Ihnen weitere Kenn­zah­len aus, die Sie bei der Be­ur­tei­lung her­an­zie­hen können.

Zum Hauptmenü