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