##PRIMER EJERCICIO:
Un estudio midió el número de pólipos en pacientes poliposis adenomatosa familiar en pacientes que recibieron un placebo una droga experimental, además se tienen datos de la edad de los sujetos, los datos se encuentran polyps.
Realice la prueba de sobredispersión para determinar si el modelo de regresión para modelar el número de pólipos en los pacientes es Poisson o Binomial Negativo.
Ajuste el modelo de regresión binomial negativo con el número de pólipos en los pacientes como variable de interés.
library(GLMsData)
library(AER)
## Cargando paquete requerido: car
## Cargando paquete requerido: carData
## Cargando paquete requerido: lmtest
## Cargando paquete requerido: zoo
##
## Adjuntando el paquete: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## Cargando paquete requerido: sandwich
## Cargando paquete requerido: survival
library(MASS)
library(DescTools)
##
## Adjuntando el paquete: 'DescTools'
## The following object is masked from 'package:car':
##
## Recode
library(car)
data("polyps")
?polyps
## starting httpd help server ...
## done
Dummificación de variables
polyps$TreatDrug=ifelse(polyps$Treatment=="Drug",1,0)
polyps=polyps[,-2]
Modelo de regresión poisson
mod1poi= glm(Number~ ., data = polyps, family = poisson)
summary(mod1poi)
##
## Call:
## glm(formula = Number ~ ., family = poisson, data = polyps)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 4.529024 0.146872 30.84 < 2e-16 ***
## Age -0.038830 0.005955 -6.52 7.02e-11 ***
## TreatDrug -1.359083 0.117643 -11.55 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 378.66 on 19 degrees of freedom
## Residual deviance: 179.54 on 17 degrees of freedom
## AIC: 273.88
##
## Number of Fisher Scoring iterations: 5
# Interpretacion coeficiente
round(exp(coef(mod1poi)), 2)
## (Intercept) Age TreatDrug
## 92.67 0.96 0.26
H0: No existe sobredispersion H1: Existe sobredispersion cuadratica
dispersiontest(mod1poi, trafo = 2)
##
## Overdispersion test
##
## data: mod1poi
## z = 1.6874, p-value = 0.04576
## alternative hypothesis: true alpha is greater than 0
## sample estimates:
## alpha
## 0.1801531
La prueba de sobredispersión obtuvo un p-valor de 0.04576, inferior al 5 %, y un Alpha de 0.1801531. Por tanto, se rechaza la hipótesis nula y se evidencia sobredispersión en los datos. En consecuencia, se justifica ajustar un modelo de regresión binomial negativa para modelar el número de pólipos en los pacientes.
mod1=glm.nb(Number~., data = polyps)
summary(mod1)
##
## Call:
## glm.nb(formula = Number ~ ., data = polyps, init.theta = 1.719491,
## link = log)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 4.52603 0.59466 7.611 2.72e-14 ***
## Age -0.03856 0.02095 -1.840 0.065751 .
## TreatDrug -1.36812 0.36903 -3.707 0.000209 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for Negative Binomial(1.7195) family taken to be 1)
##
## Null deviance: 36.734 on 19 degrees of freedom
## Residual deviance: 22.002 on 17 degrees of freedom
## AIC: 164.88
##
## Number of Fisher Scoring iterations: 1
##
##
## Theta: 1.719
## Std. Err.: 0.607
##
## 2 x log-likelihood: -156.880
Seleccion de Variables
step(mod1)
## Start: AIC=162.88
## Number ~ Age + TreatDrug
##
## Df Deviance AIC
## <none> 22.002 162.88
## - Age 1 25.146 164.02
## - TreatDrug 1 34.748 173.63
##
## Call: glm.nb(formula = Number ~ Age + TreatDrug, data = polyps, init.theta = 1.719491,
## link = log)
##
## Coefficients:
## (Intercept) Age TreatDrug
## 4.52603 -0.03856 -1.36812
##
## Degrees of Freedom: 19 Total (i.e. Null); 17 Residual
## Null Deviance: 36.73
## Residual Deviance: 22 AIC: 164.9
Modelo mejorado
mod1mejorado=glm.nb(formula = Number ~ Age + TreatDrug, data = polyps, init.theta = 1.719491,
link = log)
round(exp(mod1mejorado$coefficients),2)
## (Intercept) Age TreatDrug
## 92.39 0.96 0.25
El modelo binomial negativo muestra que los pacientes tratados con sulindac presentan 0.25 veces el número esperado de pólipos en comparación con quienes reciben placebo. Por su parte, por cada año adicional de edad, el número esperado de pólipos se aumenta por 0.96. Se destaca que el efecto del tratamiento es estadísticamente significativo (p = 0.000209), mientras que el de la edad no lo es al 5 % (p = 0.065751).
#Medidad de bondad de ajuste
library(DescTools)
PseudoR2(mod1mejorado,"Nagelkerke")
## Nagelkerke
## 0.4272835
El coeficiente de Nagelkerke (0.4273) indica que el modelo presenta una buena capacidad explicativa.
#Prueba de verosimilitud
summary(mod1mejorado)
##
## Call:
## glm.nb(formula = Number ~ Age + TreatDrug, data = polyps, init.theta = 1.719491003,
## link = log)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 4.52603 0.59466 7.611 2.72e-14 ***
## Age -0.03856 0.02095 -1.840 0.065751 .
## TreatDrug -1.36812 0.36903 -3.707 0.000209 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for Negative Binomial(1.7195) family taken to be 1)
##
## Null deviance: 36.734 on 19 degrees of freedom
## Residual deviance: 22.002 on 17 degrees of freedom
## AIC: 164.88
##
## Number of Fisher Scoring iterations: 1
##
##
## Theta: 1.719
## Std. Err.: 0.607
##
## 2 x log-likelihood: -156.880
1 - pchisq(36.734 - 22.002, 19 - 17)
## [1] 0.0006323927
Como el p-valor es inferior a 0.05, se rechaza la hipótesis nula. Por tanto, existe evidencia estadística de que el modelo con edad y tratamiento mejora significativamente el ajuste respecto al modelo nulo.
#datos atipicos
par(mfrow=c(1,2))
plot(abs(residuals(mod1mejorado)))
abline(h=2, col="red")
plot(abs(residuals(mod1mejorado, type="pearson")))
abline(h=2, col="red")
r1 = abs(residuals(mod1mejorado))
r2 = abs(residuals(mod1mejorado, type="pearson"))
residuales = data.frame(r1,r2)
residuales[residuales$r1>2 & residuales$r2>2,]
## [1] r1 r2
## <0 rows> (o 0- extensión row.names)
No se identifican valores atipicos
#Deteccion de datos influiyentes
library(car)
influence.measures(mod1mejorado)
## Influence measures of
## glm.nb(formula = Number ~ Age + TreatDrug, data = polyps, init.theta = 1.719491003, link = log) :
##
## dfb.1_ dfb.Age dfb.TrtD dffit cov.r cook.d hat inf
## 1 -0.02937 0.03200 -0.28333 -0.38627 1.095 5.72e-02 0.1133
## 2 -0.00259 0.00282 -0.28470 -0.38027 1.097 5.55e-02 0.1119
## 3 -0.19047 0.20754 -0.25488 -0.43841 1.157 7.40e-02 0.1495
## 4 -0.00197 0.00214 -0.21604 -0.28856 1.196 3.29e-02 0.1119
## 5 -0.00197 0.00214 -0.21604 -0.28856 1.196 3.29e-02 0.1119
## 6 0.08214 -0.08950 -0.06188 -0.10918 1.688 4.90e-03 0.2932 *
## 7 0.02210 -0.02408 0.21322 0.29069 1.198 3.34e-02 0.1133
## 8 0.20390 -0.22217 0.32369 0.53001 1.026 1.04e-01 0.1401
## 9 0.00932 -0.01016 1.02475 1.36874 0.188 3.99e-01 0.1119 *
## 10 0.07295 -0.20548 0.15194 -0.35635 1.193 4.97e-02 0.1344
## 11 -0.01932 -0.09020 0.14942 -0.27243 1.184 2.93e-02 0.1017
## 12 -0.11026 0.15086 -0.02018 0.16673 2.246 1.14e-02 0.4691 *
## 13 -0.17080 0.11586 0.12327 -0.19943 1.332 1.61e-02 0.1396
## 14 -0.08330 0.04115 0.08026 -0.12181 1.307 6.06e-03 0.1038
## 15 0.02768 0.00734 -0.05424 0.08698 1.302 3.10e-03 0.0918
## 16 -0.00361 0.00232 0.00277 -0.00438 1.376 7.89e-06 0.1284
## 17 0.04630 -0.02287 -0.04461 0.06771 1.328 1.88e-03 0.1038
## 18 -0.10486 0.29537 -0.21841 0.51224 1.025 9.76e-02 0.1344
## 19 0.05950 -0.04719 -0.03399 0.06237 1.529 1.60e-03 0.2177
## 20 0.17006 -0.10255 -0.13953 0.21697 1.276 1.90e-02 0.1187
influencePlot(mod1mejorado)
## StudRes Hat CookD
## 6 -0.1695216 0.2931957 0.004896272
## 8 1.3133245 0.1400530 0.104337199
## 9 3.8568366 0.1118564 0.399472485
## 12 0.1773678 0.4691141 0.011415908
Se observa que la observación 9 es potencialmente influyente.
cor(polyps[, c("Age", "TreatDrug")])
## Age TreatDrug
## Age 1.000000 -0.159522
## TreatDrug -0.159522 1.000000
la correlación de -0.1595 indica que no existe una relación lineal importante entre la edad y el tratamiento. Por tanto, no se observa una asociación fuerte entre estas variables que sugiera un problema de multicolinealidad.
##SEGUNDO EJERCICIO:
Un estudio de adolescentes con trastornos emocionales graves (SED) y discapacidades de aprendizaje (ld) informó sobre sus niveles de depresión. La variable Obs son recuentos del número de sujetos que requirieron medicación. Las variables relacionadas son: la Edad, Grupo (LD o SED), Género y nivel de depresión (L baja o H alta), los datos se encuentran en dyouth.
Realice la prueba de sobredispersión para determinar si el modelo de regresión para modelar el número de sujetos que requieren medicación es Poisson o Binomial Negativo.
Ajuste el modelo de regresión binomial negativo con el número de sujetos que requieren medicación como variable de interés.
library(GLMsData)
library(MASS)
library(AER)
data("dyouth")
?dyouth
Dummificación de variables
#Age
dyouth$e1214=ifelse(dyouth$Age=="12-14",1,0)
dyouth$e1516=ifelse(dyouth$Age=="15-16",1,0)
#Group
dyouth$GroupLD=ifelse(dyouth$Group=="LD",1,0)
#Gender
dyouth$GenderF=ifelse(dyouth$Gender=="F",1,0)
#Depression
dyouth$DepressionH=ifelse(dyouth$Depression=="H",1,0)
dyouth=dyouth[,-(2:5)]
Modelo de regresión poisson
mod2poi=glm(Obs~ ., data=dyouth, family = poisson())
summary(mod2poi)
##
## Call:
## glm(formula = Obs ~ ., family = poisson(), data = dyouth)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 2.99697 0.12107 24.753 < 2e-16 ***
## e1214 0.38036 0.11796 3.225 0.00126 **
## e1516 0.32220 0.11938 2.699 0.00696 **
## GroupLD 0.80163 0.10030 7.993 1.32e-15 ***
## GenderF -0.73211 0.09903 -7.393 1.44e-13 ***
## DepressionH -1.33337 0.11413 -11.683 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 368.048 on 23 degrees of freedom
## Residual deviance: 60.237 on 18 degrees of freedom
## AIC: 176.91
##
## Number of Fisher Scoring iterations: 4
# Interpretacion coeficiente
round(exp(coef(mod2poi)), 2)
## (Intercept) e1214 e1516 GroupLD GenderF DepressionH
## 20.02 1.46 1.38 2.23 0.48 0.26
dispersiontest(mod2poi, trafo = 1)
##
## Overdispersion test
##
## data: mod2poi
## z = 2.2829, p-value = 0.01122
## alternative hypothesis: true alpha is greater than 0
## sample estimates:
## alpha
## 1.396631
La prueba de sobredispersión obtuvo un p-valor de 0.01122, inferior al nivel de significancia del 5 %, y un Alpha de 1.396631. Por tanto, se rechaza la hipótesis nula y se evidencia sobredispersión en los datos.
mod2=glm.nb(Obs~ ., data = dyouth)
summary(mod2)
##
## Call:
## glm.nb(formula = Obs ~ ., data = dyouth, init.theta = 10.73901756,
## link = log)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 2.9802 0.2034 14.655 < 2e-16 ***
## e1214 0.3656 0.2078 1.760 0.078419 .
## e1516 0.3244 0.2085 1.556 0.119673
## GroupLD 0.7536 0.1697 4.440 8.99e-06 ***
## GenderF -0.6422 0.1691 -3.798 0.000146 ***
## DepressionH -1.2932 0.1742 -7.425 1.13e-13 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for Negative Binomial(10.739) family taken to be 1)
##
## Null deviance: 131.575 on 23 degrees of freedom
## Residual deviance: 27.211 on 18 degrees of freedom
## AIC: 167.17
##
## Number of Fisher Scoring iterations: 1
##
##
## Theta: 10.74
## Std. Err.: 5.98
##
## 2 x log-likelihood: -153.168
step(mod2)
## Start: AIC=165.17
## Obs ~ e1214 + e1516 + GroupLD + GenderF + DepressionH
##
## Df Deviance AIC
## <none> 27.211 165.17
## - e1516 1 29.639 165.60
## - e1214 1 30.243 166.20
## - GenderF 1 41.489 177.44
## - GroupLD 1 46.636 182.59
## - DepressionH 1 83.378 219.34
##
## Call: glm.nb(formula = Obs ~ e1214 + e1516 + GroupLD + GenderF + DepressionH,
## data = dyouth, init.theta = 10.73901756, link = log)
##
## Coefficients:
## (Intercept) e1214 e1516 GroupLD GenderF DepressionH
## 2.9802 0.3656 0.3244 0.7536 -0.6422 -1.2932
##
## Degrees of Freedom: 23 Total (i.e. Null); 18 Residual
## Null Deviance: 131.6
## Residual Deviance: 27.21 AIC: 167.2
Modelo mejorado
mod2mejorado=glm.nb(formula = Obs ~ e1214 + e1516 + GroupLD + GenderF + DepressionH,
data = dyouth, init.theta = 10.73901756, link = log)
round(exp(mod2mejorado$coefficients),2)
## (Intercept) e1214 e1516 GroupLD GenderF DepressionH
## 19.69 1.44 1.38 2.12 0.53 0.27
El modelo de regresión binomial negativa, muestra que los adolescentes de 12-14 años presentan 1.44 veces el número esperado de observaciones respecto al grupo de 17-18 años, mientras que los de 15-16 años presentan 1.38 veces. Por su parte, el grupo LD presenta 2.12 veces el número esperado respecto al grupo SED. El género femenino presenta 0.53 veces el número esperado respecto al masculino, y el nivel de depresión alta 0.27 veces respecto al nivel bajo. Estos resultados reflejan la asociación de las variables explicativas con el número de adolescentes observados, manteniendo constantes las demás variables.
#Medidad de bondad de ajuste
library(DescTools)
PseudoR2(mod2mejorado,"Nagelkerke")
## Nagelkerke
## 0.7900419
El pseudo-R² de Nagelkerke (0.7900) indica que el modelo presenta un buena explicacion.
#Prueba de verosimilitud
summary(mod2mejorado)
##
## Call:
## glm.nb(formula = Obs ~ e1214 + e1516 + GroupLD + GenderF + DepressionH,
## data = dyouth, init.theta = 10.73904566, link = log)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 2.9802 0.2034 14.655 < 2e-16 ***
## e1214 0.3656 0.2078 1.760 0.078419 .
## e1516 0.3244 0.2085 1.556 0.119672
## GroupLD 0.7536 0.1697 4.440 8.99e-06 ***
## GenderF -0.6422 0.1691 -3.798 0.000146 ***
## DepressionH -1.2932 0.1742 -7.425 1.13e-13 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for Negative Binomial(10.739) family taken to be 1)
##
## Null deviance: 131.575 on 23 degrees of freedom
## Residual deviance: 27.211 on 18 degrees of freedom
## AIC: 167.17
##
## Number of Fisher Scoring iterations: 1
##
##
## Theta: 10.74
## Std. Err.: 5.98
##
## 2 x log-likelihood: -153.168
1 - pchisq(131.575 - 27.211, 23 - 18)
## [1] 0
Se rechaza la hipótesis nula, dado que el p-valor es inferior a 0.05. Por tanto, las cinco variables explicativas, consideradas conjuntamente, mejoran significativamente el ajuste del modelo binomial negativo respecto al modelo nulo.
# DATOS ATIPICOS
par(mfrow=c(1,2))
plot(abs(residuals(mod2mejorado)))
abline(h=2, col="red")
plot(abs(residuals(mod2mejorado, type="pearson")))
abline(h=2, col="red")
r1 = abs(residuals(mod2mejorado))
r2 = abs(residuals(mod2mejorado, type="pearson"))
residuales = data.frame(r1,r2)
residuales[residuales$r1>2 & residuales$r2>2,]
## [1] r1 r2
## <0 rows> (o 0- extensión row.names)
residuales
## r1 r2
## 1 0.8590495 0.9359298
## 2 0.2188494 0.2238978
## 3 0.1988100 0.2028926
## 4 1.1778465 1.3333331
## 5 1.6993652 1.4145437
## 6 0.8381731 0.7607669
## 7 2.1118021 1.6625137
## 8 1.3974828 1.6400433
## 9 0.2598261 0.2667621
## 10 1.0506031 0.9372058
## 11 0.4303201 0.4114688
## 12 0.6405978 0.6863953
## 13 0.4628458 0.4851763
## 14 1.5064062 1.2566853
## 15 0.1144078 0.1157948
## 16 1.1564303 1.3235542
## 17 0.4263050 0.4078968
## 18 0.3019426 0.3117812
## 19 0.7986129 0.7336954
## 20 2.1885540 1.6406272
## 21 1.8234792 2.1831367
## 22 0.1440307 0.1415992
## 23 0.3501316 0.3634801
## 24 0.4750179 0.4445071
Se identifican las observaciones 7, 20 y 21 como posibles valores atípicos, debido a que presentan residuos absolutos superiores al umbral establecido.
# DETECCION DE DATOS INFLUYENTES
library(car)
influence.measures(mod2mejorado)
## Influence measures of
## glm.nb(formula = Obs ~ e1214 + e1516 + GroupLD + GenderF + DepressionH, data = dyouth, init.theta = 10.73904566, link = log) :
##
## dfb.1_ dfb.e121 dfb.e151 dfb.GrLD dfb.GndF dfb.DprH dffit cov.r
## 1 0.04438 0.359074 0.009439 0.2837 -0.2872 -0.2630 0.6904 1.518
## 2 -0.02523 0.062382 -0.000363 0.0451 -0.0467 0.0661 0.1327 1.898
## 3 -0.03343 0.067335 0.000769 0.0512 0.0619 -0.0450 0.1348 2.002
## 4 -0.32561 0.307888 -0.006721 0.2128 0.3195 0.3571 0.7012 1.007
## 5 -0.45237 -0.486230 -0.004233 0.4564 0.3753 0.3188 -0.9823 0.958
## 6 -0.06842 -0.162137 0.004013 0.1739 0.1164 -0.1910 -0.3741 1.489
## 7 -0.15137 -0.485829 0.003294 0.4859 -0.4780 0.2856 -1.0394 0.708
## 8 -0.06320 0.274596 -0.011383 -0.3127 0.3039 0.3521 0.6843 0.725
## 9 0.01219 0.002934 0.100173 0.0783 -0.0793 -0.0723 0.1916 2.054
## 10 0.10716 0.001783 -0.267659 -0.1906 0.1972 -0.2816 -0.5647 1.425
## 11 0.06771 -0.001736 -0.137457 -0.1030 -0.1255 0.0902 -0.2734 1.910
## 12 -0.15932 -0.003733 0.152723 0.1036 0.1565 0.1753 0.3443 1.551
## 13 0.14556 0.001518 0.158235 -0.1474 -0.1205 -0.1019 0.3174 1.852
## 14 -0.11402 0.007611 -0.274926 0.2912 0.1938 -0.3205 -0.6277 1.070
## 15 0.00956 -0.000239 0.031179 -0.0309 0.0304 -0.0180 0.0661 1.893
## 16 -0.04901 -0.009952 0.215718 -0.2420 0.2352 0.2729 0.5309 0.981
## 17 -0.18558 0.160908 0.160815 -0.1127 0.1147 0.1015 -0.2904 1.972
## 18 0.06050 -0.091402 -0.091016 0.0545 -0.0567 0.0862 0.1727 1.817
## 19 -0.15212 0.260184 0.259585 -0.1693 -0.2168 0.1437 -0.4770 1.653
## 20 -0.04817 0.406970 0.404595 -0.2237 -0.3563 -0.4053 -0.7994 0.727
## 21 1.60193 -0.870297 -0.868029 -0.7384 -0.5751 -0.4687 1.6019 0.294
## 22 -0.04170 0.031208 0.031017 0.0282 0.0178 -0.0314 -0.0618 1.715
## 23 0.13058 -0.102682 -0.102244 -0.0897 0.0880 -0.0475 0.1948 1.774
## 24 -0.05866 0.074050 0.073481 0.0686 -0.0665 -0.0782 -0.1534 1.531
## cook.d hat inf
## 1 0.108642 0.332
## 2 0.004228 0.270
## 3 0.004367 0.306 *
## 4 0.107376 0.220
## 5 0.205224 0.301
## 6 0.032688 0.211
## 7 0.220493 0.261
## 8 0.098123 0.156
## 9 0.008796 0.331 *
## 10 0.073021 0.268
## 11 0.017821 0.305
## 12 0.027841 0.217
## 13 0.023931 0.299
## 14 0.087170 0.208
## 15 0.001053 0.259
## 16 0.062146 0.153
## 17 0.020101 0.328
## 18 0.007142 0.249
## 19 0.053069 0.294
## 20 0.132947 0.193
## 21 0.449566 0.287 *
## 22 0.000918 0.183
## 23 0.009068 0.239
## 24 0.005615 0.129
influencePlot(mod2mejorado)
## StudRes Hat CookD
## 1 0.9792925 0.3320290 0.108641557
## 7 -1.7479706 0.2612339 0.220493083
## 9 0.2720421 0.3314638 0.008795963
## 21 2.5224735 0.2873956 0.449566147
Se identifican las observaciones 1, 7,9 y 21 como potencialmente influyentes en el modelo.
#verosimilitud
cor(dyouth[, c("e1214", "e1516", "GroupLD", "GenderF", "DepressionH")])
## e1214 e1516 GroupLD GenderF DepressionH
## e1214 1.0 -0.5 0 0 0
## e1516 -0.5 1.0 0 0 0
## GroupLD 0.0 0.0 1 0 0
## GenderF 0.0 0.0 0 1 0
## DepressionH 0.0 0.0 0 0 1
La matriz de correlaciones muestra que las variables explicativas presentan correlaciones iguales a cero, excepto e1214 y e1516, que tienen una correlación negativa de -0.5. Esto se debe a que ambas variables representan categorías diferentes de la misma variable edad. En general, no se observan asociaciones lineales importantes entre los predictores, por lo que no se evidencia un problema significativo de multicolinealidad en el modelo.