So berechnen sie das r-quadrat in python (mit beispiel)


Das R-Quadrat , oft als R2 geschrieben, ist der Anteil der Varianz in der Antwortvariablen , der durch die Prädiktorvariablen in einem linearen Regressionsmodell erklärt werden kann.

Der Wert von R im Quadrat kann zwischen 0 und 1 variieren, wobei:

  • 0 bedeutet, dass die Antwortvariable überhaupt nicht durch die Prädiktorvariable erklärt werden kann.
  • 1 zeigt an, dass die Antwortvariable durch die Prädiktorvariablen perfekt und fehlerfrei erklärt werden kann.

Das folgende Beispiel zeigt, wie R 2 für ein Regressionsmodell in Python berechnet wird.

Beispiel: R-Quadrat in Python berechnen

Angenommen, wir haben den folgenden Pandas-DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' hours ': [1, 2, 2, 4, 2, 1, 5, 4, 2, 4, 4, 3, 6],
                   ' prep_exams ': [1, 3, 3, 5, 2, 2, 1, 1, 0, 3, 4, 3, 2],
                   ' score ': [76, 78, 85, 88, 72, 69, 94, 94, 88, 92, 90, 75, 96]})

#view DataFrame
print (df)

    hours prep_exams score
0 1 1 76
1 2 3 78
2 2 3 85
3 4 5 88
4 2 2 72
5 1 2 69
6 5 1 94
7 4 1 94
8 2 0 88
9 4 3 92
10 4 4 90
11 3 3 75
12 6 2 96

Wir können die LinearRegression()- Funktion von sklearn verwenden, um ein Regressionsmodell anzupassen, und die Score()- Funktion, um den R-Quadrat-Wert des Modells zu berechnen:

 from sklearn.linear_model import LinearRegression

#initiate linear regression model
model = LinearRegression()

#define predictor and response variables
x, y = df[[" hours ", " prep_exams "]], df. score

#fit regression model
model. fit (x,y)

#calculate R-squared of regression model
r_squared = model. score (x,y)

#view R-squared value
print (r_squared)

0.7175541714105901

Das R-Quadrat des Modells beträgt 0,7176 .

Dies bedeutet, dass 71,76 % der Abweichungen in den Prüfungsergebnissen durch die Anzahl der Lernstunden und die Anzahl der abgelegten Übungsprüfungen erklärt werden können.

Wenn wir wollten, könnten wir diesen R-Quadrat-Wert dann mit einem anderen Regressionsmodell mit einem anderen Satz von Prädiktorvariablen vergleichen.

Im Allgemeinen werden Modelle mit höheren R-Quadrat-Werten bevorzugt, da dies bedeutet, dass der Satz von Prädiktorvariablen im Modell die Variation der Antwortvariablen gut erklären kann.

Verwandt:Was ist ein guter R-Quadrat-Wert?

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere gängige Vorgänge in Python ausführen:

So führen Sie eine einfache lineare Regression in Python durch
So führen Sie eine multiple lineare Regression in Python durch
So berechnen Sie den AIC von Regressionsmodellen in Python

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert