Come tracciare i risultati di regressione lineare multipla in r


Quando eseguiamo una regressione lineare semplice in R, è facile visualizzare la linea di regressione adattata perché stiamo lavorando solo con una singola variabile predittrice e una singola variabile di risposta .

Ad esempio, il codice seguente mostra come adattare un modello di regressione lineare semplice a un set di dati e tracciare i risultati:

 #create dataset
data <- data.frame(x = c(1, 1, 2, 4, 4, 5, 6, 7, 7, 8, 9, 10, 11, 11),
                   y = c(13, 14, 17, 23, 24, 25, 25, 24, 28, 32, 33, 35, 40, 41))

#fit simple linear regression model
model <- lm(y ~ x, data = data)

#create scatterplot of data
plot(data$x, data$y)

#add fitted regression line
abline(model)

Tracciare una semplice linea di regressione lineare in R con un grafico a dispersione

Tuttavia, quando eseguiamo una regressione lineare multipla, diventa difficile visualizzare i risultati perché esistono più variabili predittive e non possiamo semplicemente tracciare una linea di regressione su un grafico 2D.

Possiamo invece utilizzare grafici con variabili aggiunte (a volte chiamati “grafici di regressione parziale”), che sono grafici individuali che mostrano la relazione tra la variabile di risposta e una variabile predittrice, controllando al contempo la presenza di altre variabili predittive nel modello .

L’esempio seguente mostra come eseguire una regressione lineare multipla in R e visualizzare i risultati utilizzando grafici con variabili aggiunte.

Esempio: tracciare i risultati della regressione lineare multipla in R

Supponiamo di adattare il seguente modello di regressione lineare multipla a un set di dati in R utilizzando il set di dati mtcars integrato:

 #fit multiple linear regression model
model <- lm(mpg ~ disp + hp + drat, data = mtcars)

#view results of model
summary(model)

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

Residuals:
    Min 1Q Median 3Q Max 
-5.1225 -1.8454 -0.4456 1.1342 6.4958 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)   
(Intercept) 19.344293 6.370882 3.036 0.00513 **
available -0.019232 0.009371 -2.052 0.04960 * 
hp -0.031229 0.013345 -2.340 0.02663 * 
drat 2.714975 1.487366 1.825 0.07863 . 
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 3.008 on 28 degrees of freedom
Multiple R-squared: 0.775, Adjusted R-squared: 0.7509 
F-statistic: 32.15 on 3 and 28 DF, p-value: 3.28e-09

Dai risultati, possiamo vedere che il valore p per ciascuno dei coefficienti è inferiore a 0,1. Per semplicità, assumeremo che ciascuna delle variabili predittive sia significativa e debba essere inclusa nel modello.

Per produrre grafici delle variabili aggiunte, possiamo utilizzare la funzione avPlots() dal pacchetto car :

 #load car package
library(car)

#produce added variable plots
avPlots(model)

Tracciare la regressione lineare multipla in R

Ecco come interpretare ciascuna trama:

  • L’asse x mostra una singola variabile predittrice e l’asse y mostra la variabile di risposta.
  • La linea blu mostra l’associazione tra la variabile predittore e la variabile di risposta, mantenendo costante il valore di tutte le altre variabili predittive .
  • I punti etichettati in ciascun grafico rappresentano le 2 osservazioni con i residui maggiori e le 2 osservazioni con la leva parziale maggiore.

Si noti che l’angolo della linea in ciascun grafico corrisponde al segno del coefficiente dell’equazione di regressione stimata.

Ad esempio, ecco i coefficienti stimati per ciascuna variabile predittrice nel modello:

  • visualizzazione: -0,019232
  • cap: -0,031229
  • data: 2.714975

Si noti che l’angolo della linea è positivo nel grafico della variabile aggiunta per drat mentre è negativo per disp e hp , che corrisponde ai segni dei loro coefficienti stimati:

Aggiunta di un grafico variabile in R

Sebbene non sia possibile tracciare una singola linea di regressione adattata su un grafico 2D poiché disponiamo di più variabili predittive, questi grafici con variabili aggiunte ci consentono di osservare la relazione tra ogni singola variabile predittiva e la variabile di risposta mantenendo costanti le altre variabili predittive.

Aggiungi un commento

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