5 RLM part II
Simplificació mètode del model “únic”
Model únic; aplicable tant amb RLM com GLM
Authors:Compte, J. & Gascón S.
Aquesta secció servirà per conèixer quines variables independents són més importants en una Regresió Lineal Multiple (RLM) amb R, utilitzant el mètode de model únic.
5.1 Carregar les dades
L’exercici és una continuació de l’exercici de RLM(I).
Per a aquest exercici, utilitzarem les dades de l’arxiu “contaminacio.RData”.
Les dades s’han extret del llibre Sokal, R.R. and Rohlf, F.J. (1995) Biometry: The Principles and Practice of Statistics in Biological Research. 3rd Edition, W.H. Freeman and Co., New York. pàg 611-612.
Carreguem les dades a R.
S’ha mesurat la concentració de diòxid de sofre (SO2) en 41 ciutats dels EUA i es vol saber, de les variables que tenen efectes sobre l’SO2, quines tenen més influència. Les variables que s’han estudiat són:
- temperatura (temp)
- número de fàbriques que hi ha a cada ciutat (n_fabr)
- densitat de població (Pobl)
- velocitat del vent (vent)
- precipitació (precp)
- dies de pluja (dies_pluja)
Per contestar aquesta pregunta, es partirà de la RLM realitzada en la sessió anterior de RLM(I).
5.1.1 packages necessaris
Per aquesta sessió es necessiten els següents packages:
Si surt Warning no pasa res, sol ser un avis perquè la versió del package és anterior al nostre R. En general, no és un problema i els packages funcionen bé.
Si surt Loading vol dir que per funcionar el package que volem “activar” cal carregar altres packages, R ho detecta i ho fa automàticament.
5.2 Les variables
Comprovem si les variables s’han carregat bé
## ciutat so2 temp n_fabr
## Albany : 1 Min. : 8.00 Min. :43.50 Min. : 35.0
## Albuquerque : 1 1st Qu.: 13.00 1st Qu.:50.60 1st Qu.: 181.0
## Atlanta : 1 Median : 26.00 Median :54.60 Median : 347.0
## Baltimore : 1 Mean : 30.05 Mean :55.76 Mean : 463.1
## Buffalo : 1 3rd Qu.: 35.00 3rd Qu.:59.30 3rd Qu.: 462.0
## Charleston : 1 Max. :110.00 Max. :75.50 Max. :3344.0
## (Other) :35
## Pobl vent precp dies_pluja
## Min. : 71.0 Min. : 6.000 Min. : 7.05 Min. : 36.0
## 1st Qu.: 299.0 1st Qu.: 8.700 1st Qu.:30.96 1st Qu.:103.0
## Median : 515.0 Median : 9.300 Median :38.74 Median :115.0
## Mean : 608.6 Mean : 9.444 Mean :36.77 Mean :113.9
## 3rd Qu.: 717.0 3rd Qu.:10.600 3rd Qu.:43.11 3rd Qu.:128.0
## Max. :3369.0 Max. :12.700 Max. :59.80 Max. :166.0
##
Hem de realitzar la RLM de la sessió anterior.
5.3 Fem la Regressió múltiple i simplificació automàtica
Fem l’RLM. No posem la variable Pobl perquè com vam veure en la sessió RLM(I) tenia col·linealitat amb n_fabr.
Mirem els resultats:
##
## Call:
## lm(formula = log(so2) ~ dies_pluja + n_fabr + precp + temp +
## vent, data = contaminacio.data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.7864 -0.2563 -0.0516 0.2759 1.1473
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 7.6864628 1.4471647 5.311 6.25e-06 ***
## dies_pluja 0.0003444 0.0050524 0.068 0.946037
## n_fabr 0.0005550 0.0001331 4.170 0.000191 ***
## precp 0.0194181 0.0112308 1.729 0.092620 .
## temp -0.0689735 0.0184040 -3.748 0.000643 ***
## vent -0.1797441 0.0562091 -3.198 0.002936 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.4565 on 35 degrees of freedom
## Multiple R-squared: 0.6304, Adjusted R-squared: 0.5776
## F-statistic: 11.94 on 5 and 35 DF, p-value: 8.74e-07
En el nostre cas, n_fabr, temp i el vent estan relacionades amb el SO2. Peró, dies_pluja i precp no presenten relació (ja que tenen p-valors > 0.05), per tant podem simplificar el model de regressió.
Fem una simplificació automàtica del model utilitzant el mètode backward.
## Start: AIC=-58.8
## log(so2) ~ dies_pluja + n_fabr + precp + temp + vent
##
## Df Sum of Sq RSS AIC
## - dies_pluja 1 0.0010 7.2933 -60.791
## <none> 7.2924 -58.797
## - precp 1 0.6229 7.9152 -57.436
## - vent 1 2.1306 9.4229 -50.287
## - temp 1 2.9264 10.2188 -46.963
## - n_fabr 1 3.6226 10.9149 -44.261
##
## Step: AIC=-60.79
## log(so2) ~ n_fabr + precp + temp + vent
##
## Df Sum of Sq RSS AIC
## <none> 7.2933 -60.791
## - precp 1 1.8539 9.1472 -53.505
## - vent 1 2.2095 9.5028 -51.941
## - n_fabr 1 3.6457 10.9390 -46.171
## - temp 1 7.3823 14.6757 -34.123
La simplificació ha consistit en eliminar dies_pluja aconseguint passar d’un AIC inicial = -58.8 a un AIC sense dies de pluja = -60.79 . Per tant, s’ha millorat el model, ja que l’AIC és més petit.
Fem, doncs, l’RLM sense dies_pluja. Li posem el nom lnso2_rlm2
5.4 Característiques del model
- La R2 del model final:
##
## Call:
## lm(formula = log(so2) ~ n_fabr + precp + temp + vent, data = contaminacio.data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.77450 -0.26074 -0.05387 0.27927 1.14267
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 7.7628404 0.9032385 8.594 3.02e-10 ***
## n_fabr 0.0005556 0.0001310 4.242 0.000148 ***
## precp 0.0200318 0.0066221 3.025 0.004568 **
## temp -0.0699392 0.0115861 -6.036 6.21e-07 ***
## vent -0.1803936 0.0546244 -3.302 0.002172 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.4501 on 36 degrees of freedom
## Multiple R-squared: 0.6303, Adjusted R-squared: 0.5892
## F-statistic: 15.35 on 4 and 36 DF, p-value: 2.053e-07
Adjusted R-squared: 0.5892
5.5 Gràfics de relacions parcials
Obtenir els gràfics de les relacions parcials de cada variable independent (X) amb la variable dependent (ln_so2). Són les relacions de cada X amb la Y deixant la resta de X constants. La comanda que s’utilitza és avPlots on s’ha d’especificar el nom de la RLM i perquè no calgui que pregunti cada vegada que faci un gràfic, posar ask=F.
5.6 Com quantificar la influència de variables explicatives quan tenim un únic model
Per saber quina variable X té més influència, no podem comparar directament l’efecte de les variables (és a dir, els seus coeficiets de regressió parcial) ja que tenen diferents unitats. Per aixó s’han d’estandaritzar els coeficients.
Per saber quina variable independent té més influència sobre la variable depenent (SO2), s’han de calcular els coeficients parcials estandaritzats (Beta) amb la següent fórmula:
Beta = coeff * SD(X) / SD(Y)
- coeff: coeficient de regressió parcial (efecte d’una variable “X” sobre la “Y” mantenint les altres variables “X” constants).
- SD: desviació estàndard de “Y” i de la “X” de la que volem el seu coeficient estandarditzat (amb R s’obté escrivint sd.).
Primer s’ha de calcular el coeficient de regressió parcial a cada variable explicativa (X). Per fer-ho s’utilitza la comanda coeff on entre claudàtors s’indica el nom de la variable “x”. També s’ha d’indicar abans de la comanda el nom de l’RLM afegint el símbol de dólar.
- Coefficent de regressió parcial de n_fabr
## n_fabr
## 0.0005555672
coef–>pendent= 0.0005555672
- Coefficent de regressió parcial de precp
## precp
## 0.02003175
coef–>pendent=0.02003175
- Coefficent de regressió parcial de temp
## temp
## -0.06993917
coef–>pendent=-0.06993917
- Coefficent de regressió parcial de vent
## vent
## -0.1803936
coef–>pendent=-0.1803936
Ara ja podem calcular la beta per a cada una de les 4 variables explicatives (X) amb la fórmula descrita a dalt:
- n_fabr:
## n_fabr
## 0.4457473
La beta n_fabr= 0.4457473
- precp
## precp
## 0.3357614
La beta precp= 0.3357614
- temp
## temp
## -0.71978
La beta temp= -0.71978
- vent
## vent
## -0.3669641
La beta vent= -0.3669641
A partir d’aquests resultats quina de les 4 variables té més influència sobre el contingut en sofre atmosfèric?
La temperatura (temp) perquè és la variable que té la Beta en valor absolut més elevada.