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