Come calcolare l'r quadrato corretto in r


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 spiega come calcolare l’ R2 corretto per un modello di regressione in R.

Correlato: Qual è un buon valore R quadrato?

Esempio: come calcolare l’R quadrato corretto in R

Possiamo utilizzare il codice seguente per creare un modello di regressione lineare multipla in R utilizzando il set di dati integrato chiamato mtcars :

 model <- lm (hp ~ mpg + wt + drat + qsec, data=mtcars)

E possiamo utilizzare uno dei tre metodi per trovare l’R quadrato corretto del modello:

Metodo 1: utilizzare la funzione summary()

Possiamo visualizzare sia l’R quadrato che l’R quadrato corretto del modello semplicemente utilizzando la funzione summary() :

 summary (model)

Call:
lm(formula = hp ~ mpg + wt + drat + qsec, data = mtcars)

Residuals:
    Min 1Q Median 3Q Max 
-48,801 -16,007 -5,482 11,614 97,338 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 473.779 105.213 4.503 0.000116 ***
mpg -2.877 2.381 -1.209 0.237319    
wt 26.037 13.514 1.927 0.064600 .  
drat 4.819 15.952 0.302 0.764910    
qsec -20.751 3.993 -5.197 1.79e-05 ***
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 32.25 on 27 degrees of freedom
Multiple R-squared: 0.8073, Adjusted R-squared: 0.7787 
F-statistic: 28.27 on 4 and 27 DF, p-value: 2.647e-09

Nella parte inferiore dell’output possiamo vedere quanto segue:

  • R quadrato multiplo: 0,8073
  • R quadrato corretto: 0,7787

Metodo 2: utilizzare summary(model)$adj.r.squared

Se volessimo semplicemente ottenere l’R quadrato corretto del modello, potremmo utilizzare la seguente funzione:

 summary (model)$adj.r.squared

[1] 0.7787005

Metodo 3: utilizzare una funzione personalizzata

Un altro modo per trovare l’R quadrato adattato del modello è scrivere una funzione personalizzata:

 #define function to calculate adjusted R-squared
adj_r2 <- function (x) {
   return (1 - ((1-summary(x)$r.squared)*( nobs (x)-1)/( nobs (x)- length (x$coefficients)-1)))
}

#use function to calculate adjusted R-squared of the model
adj_r2(model)

[1] 0.7787005
numeric(0)

Si noti che ciascuno dei tre metodi qui condivisi fornisce lo stesso valore per l’R quadrato corretto.

Risorse addizionali

Come eseguire una regressione lineare semplice in R
Come eseguire la regressione lineare multipla in R
Come eseguire la regressione polinomiale in R

Aggiungi un commento

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