Come calcolare l'r quadrato corretto in python


R al quadrato , spesso scritto R2 , è la proporzione della varianza nella variabile di risposta che può essere spiegata dalle variabili predittive in un modello di regressione lineare .

Il valore di R al quadrato può variare da 0 a 1. Un valore pari a 0 indica che la variabile di risposta non può essere spiegata affatto dalla variabile predittore, mentre un valore pari a 1 indica che la variabile di risposta può essere spiegata dalla variabile predittore. perfettamente spiegato senza errori dal predittore. variabili.

R-quadrato rettificato è una versione modificata di R-quadrato che regola il numero di predittori in un modello di regressione. Viene calcolato come segue:

R 2 corretto = 1 – [(1-R 2 )*(n-1)/(nk-1)]

Oro:

  • R 2 : La R 2 del modello
  • n : il numero di osservazioni
  • k : il numero di variabili predittive

Poiché R2 aumenta sempre man mano che aggiungi predittori a un modello, R2 modificato può fungere da metrica che indica quanto è utile un modello, modificato in base al numero di predittori in un modello .

Questo tutorial mostra due esempi di calcolo di R2 aggiustato per un modello di regressione in Python.

Correlato: Qual è un buon valore R quadrato?

Esempio 1: calcolare l’R quadrato corretto con sklearn

Il codice seguente mostra come adattare un modello di regressione lineare multipla e calcolare l’R quadrato adattato del modello utilizzando sklearn:

 from sklearn. linear_model import LinearRegression
import pandas as pd

#define URL where dataset is located
url = "https://raw.githubusercontent.com/Statorials/Python-Guides/main/mtcars.csv"

#read in data
data = pd. read_csv (url)

#fit regression model
model = LinearRegression ()
x, y = data[["mpg", "wt", "drat", "qsec"]], data.hp
model. fit (x,y)

#display adjusted R-squared
1 - (1-model. score (X, y))*( len (y)-1)/( len (y)-X. shape [1]-1)

0.7787005290062521

L’R quadrato corretto del modello risulta essere 0,7787 .

Esempio 2: calcolare l’R quadrato corretto con modelli statistici

Il codice seguente mostra come adattare un modello di regressione lineare multipla e calcolare l’R quadrato adattato del modello utilizzando statsmodels:

 import statsmodels. api as sm
import pandas as pd

#define URL where dataset is located
url = "https://raw.githubusercontent.com/Statorials/Python-Guides/main/mtcars.csv"

#read in data
data = pd. read_csv (url)

#fit regression model
x, y = data[["mpg", "wt", "drat", "qsec"]], data.hp
X = sm. add_constant (X)
model = sm. OLS (y,x). fit ()

#display adjusted R-squared
print ( model.rsquared_adj )

0.7787005290062521

L’R quadrato corretto del modello risulta essere 0,7787 , che corrisponde al risultato dell’esempio precedente.

Risorse addizionali

Come eseguire una semplice regressione lineare in Python
Come eseguire regressioni lineari multiple in Python
Come calcolare l’AIC dei modelli di regressione in Python

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *