Carga de datos

datos_admision <- read_excel("C:/Users/eduvi/OneDrive/Desktop/TESIS DE MASTER-EST/datos_admision.xlsx")

Preparación de datos para el modelo

datos_logit <- datos_admision %>%
  mutate(CLASF_IP_BIN = ifelse(INDICE_PREDICTIVO >= 1.00, 1, 0)) %>%
  select(CLASF_IP_BIN, PROMEDIO_DE_SECUNDARIA, PCA, PCG, BACHILLERATO, SEXO, PROVINCIA_RESIDENCIA, TIPO_COLEGIO) %>%
  mutate(across(c(BACHILLERATO, SEXO, PROVINCIA_RESIDENCIA, TIPO_COLEGIO), as.factor))

summary(datos_logit)
##   CLASF_IP_BIN    PROMEDIO_DE_SECUNDARIA      PCA             PCG      
##  Min.   :0.0000   Min.   :3.340          Min.   :10.00   Min.   :20.0  
##  1st Qu.:1.0000   1st Qu.:3.885          1st Qu.:39.00   1st Qu.:36.0  
##  Median :1.0000   Median :4.175          Median :51.00   Median :44.0  
##  Mean   :0.8819   Mean   :4.160          Mean   :50.16   Mean   :44.4  
##  3rd Qu.:1.0000   3rd Qu.:4.442          3rd Qu.:62.00   3rd Qu.:51.0  
##  Max.   :1.0000   Max.   :4.900          Max.   :81.00   Max.   :82.0  
##                                                                        
##                        BACHILLERATO        SEXO    
##  CIENCIAS                    :304   Femenino :190  
##  COMERCIO                    : 22   Masculino:174  
##  CIENCIAS Y LETRAS           : 21                  
##  LETRAS                      :  8                  
##  HUMANIDADES                 :  5                  
##  CIENCIAS, LETRAS Y FILOSOFIA:  2                  
##  (Other)                     :  2                  
##           PROVINCIA_RESIDENCIA             TIPO_COLEGIO
##  Panamá             :209       Colegio Oficial   :219  
##  Panamá Oeste       : 96       Colegio Particular:145  
##  COLON              : 34                               
##  COCLE              :  5                               
##  BOCAS DEL TORO     :  3                               
##  Comarca Ngäbe-Buglé:  3                               
##  (Other)            : 14

Ajuste del modelo de regresión logística

modelo_logit <- glm(CLASF_IP_BIN ~ ., data = datos_logit, family = "binomial")
## Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
summary(modelo_logit)
## 
## Call:
## glm(formula = CLASF_IP_BIN ~ ., family = "binomial", data = datos_logit)
## 
## Coefficients:
##                                              Estimate Std. Error z value
## (Intercept)                                -2.480e+02  5.008e+04  -0.005
## PROMEDIO_DE_SECUNDARIA                      4.835e+01  1.858e+01   2.602
## PCA                                         1.038e+00  3.975e-01   2.612
## PCG                                         7.303e-01  3.247e-01   2.249
## BACHILLERATOCIENCIAS                        1.306e+01  4.820e+04   0.000
## BACHILLERATOCIENCIAS Y LETRAS               2.406e+01  4.863e+04   0.000
## BACHILLERATOCIENCIAS, LETRAS Y COMERCIO    -3.703e+01  6.816e+04  -0.001
## BACHILLERATOCIENCIAS, LETRAS Y FILOSOFIA    3.724e-01  5.576e+04   0.000
## BACHILLERATOCOMERCIO                        1.518e+01  4.820e+04   0.000
## BACHILLERATOHUMANIDADES                     1.722e+01  4.820e+04   0.000
## BACHILLERATOLETRAS                          1.162e+01  4.820e+04   0.000
## SEXOMasculino                              -3.891e-01  2.009e+00  -0.194
## PROVINCIA_RESIDENCIACHIRIQUI               -7.036e+01  3.415e+04  -0.002
## PROVINCIA_RESIDENCIACOCLE                  -3.393e+00  2.110e+04   0.000
## PROVINCIA_RESIDENCIACOLON                   9.860e-02  1.467e+04   0.000
## PROVINCIA_RESIDENCIAComarca Emberá Wounnan  9.214e+00  5.008e+04   0.000
## PROVINCIA_RESIDENCIAComarca Guna Yala      -3.650e+01  7.631e+05   0.000
## PROVINCIA_RESIDENCIAComarca Ngäbe-Buglé    -1.989e+01  1.360e+04  -0.001
## PROVINCIA_RESIDENCIADARIEN                  1.975e+00  2.719e+04   0.000
## PROVINCIA_RESIDENCIAHERRERA                -1.086e+01  2.415e+04   0.000
## PROVINCIA_RESIDENCIAPanamá                 -1.199e+01  1.360e+04  -0.001
## PROVINCIA_RESIDENCIAPanamá Oeste           -1.319e+01  1.360e+04  -0.001
## PROVINCIA_RESIDENCIAVeraguas               -3.198e+01  2.504e+04  -0.001
## TIPO_COLEGIOColegio Particular             -5.969e-02  1.930e+00  -0.031
##                                            Pr(>|z|)   
## (Intercept)                                 0.99605   
## PROMEDIO_DE_SECUNDARIA                      0.00927 **
## PCA                                         0.00900 **
## PCG                                         0.02451 * 
## BACHILLERATOCIENCIAS                        0.99978   
## BACHILLERATOCIENCIAS Y LETRAS               0.99961   
## BACHILLERATOCIENCIAS, LETRAS Y COMERCIO     0.99957   
## BACHILLERATOCIENCIAS, LETRAS Y FILOSOFIA    0.99999   
## BACHILLERATOCOMERCIO                        0.99975   
## BACHILLERATOHUMANIDADES                     0.99972   
## BACHILLERATOLETRAS                          0.99981   
## SEXOMasculino                               0.84644   
## PROVINCIA_RESIDENCIACHIRIQUI                0.99836   
## PROVINCIA_RESIDENCIACOCLE                   0.99987   
## PROVINCIA_RESIDENCIACOLON                   0.99999   
## PROVINCIA_RESIDENCIAComarca Emberá Wounnan  0.99985   
## PROVINCIA_RESIDENCIAComarca Guna Yala       0.99996   
## PROVINCIA_RESIDENCIAComarca Ngäbe-Buglé     0.99883   
## PROVINCIA_RESIDENCIADARIEN                  0.99994   
## PROVINCIA_RESIDENCIAHERRERA                 0.99964   
## PROVINCIA_RESIDENCIAPanamá                  0.99930   
## PROVINCIA_RESIDENCIAPanamá Oeste            0.99923   
## PROVINCIA_RESIDENCIAVeraguas                0.99898   
## TIPO_COLEGIOColegio Particular              0.97533   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 264.400  on 363  degrees of freedom
## Residual deviance:  14.822  on 340  degrees of freedom
## AIC: 62.822
## 
## Number of Fisher Scoring iterations: 21

Tabla de coeficientes

tidy(modelo_logit) %>%
  kbl(caption = "Coeficientes estimados del modelo de regresión logística") %>%
  kable_styling(full_width = FALSE)
Coeficientes estimados del modelo de regresión logística
term estimate std.error statistic p.value
(Intercept) -247.9962771 5.007795e+04 -0.0049522 0.9960487
PROMEDIO_DE_SECUNDARIA 48.3463706 1.858082e+01 2.6019498 0.0092695
PCA 1.0381968 3.974698e-01 2.6120144 0.0090010
PCG 0.7303308 3.247301e-01 2.2490394 0.0245100
BACHILLERATOCIENCIAS 13.0595216 4.819615e+04 0.0002710 0.9997838
BACHILLERATOCIENCIAS Y LETRAS 24.0572928 4.862912e+04 0.0004947 0.9996053
BACHILLERATOCIENCIAS, LETRAS Y COMERCIO -37.0283310 6.815964e+04 -0.0005433 0.9995665
BACHILLERATOCIENCIAS, LETRAS Y FILOSOFIA 0.3723838 5.576324e+04 0.0000067 0.9999947
BACHILLERATOCOMERCIO 15.1837125 4.819615e+04 0.0003150 0.9997486
BACHILLERATOHUMANIDADES 17.2161095 4.819918e+04 0.0003572 0.9997150
BACHILLERATOLETRAS 11.6220200 4.819615e+04 0.0002411 0.9998076
SEXOMasculino -0.3891472 2.009355e+00 -0.1936678 0.8464360
PROVINCIA_RESIDENCIACHIRIQUI -70.3562814 3.414626e+04 -0.0020604 0.9983560
PROVINCIA_RESIDENCIACOCLE -3.3929549 2.109788e+04 -0.0001608 0.9998717
PROVINCIA_RESIDENCIACOLON 0.0985993 1.467499e+04 0.0000067 0.9999946
PROVINCIA_RESIDENCIAComarca Emberá Wounnan 9.2140897 5.007784e+04 0.0001840 0.9998532
PROVINCIA_RESIDENCIAComarca Guna Yala -36.5015946 7.630520e+05 -0.0000478 0.9999618
PROVINCIA_RESIDENCIAComarca Ngäbe-Buglé -19.8891476 1.359876e+04 -0.0014626 0.9988330
PROVINCIA_RESIDENCIADARIEN 1.9747547 2.718515e+04 0.0000726 0.9999420
PROVINCIA_RESIDENCIAHERRERA -10.8584150 2.414927e+04 -0.0004496 0.9996412
PROVINCIA_RESIDENCIAPanamá -11.9917112 1.359860e+04 -0.0008818 0.9992964
PROVINCIA_RESIDENCIAPanamá Oeste -13.1896446 1.359860e+04 -0.0009699 0.9992261
PROVINCIA_RESIDENCIAVeraguas -31.9754506 2.504237e+04 -0.0012769 0.9989812
TIPO_COLEGIOColegio Particular -0.0596887 1.930202e+00 -0.0309236 0.9753305

Medidas de bondad de ajuste

pR2(modelo_logit)
## fitting null model for pseudo-r2
##          llh      llhNull           G2     McFadden         r2ML         r2CU 
##   -7.4112118 -132.1998023  249.5771811    0.9439393    0.4962381    0.9610690

Curva ROC y AUC

probabilidades <- predict(modelo_logit, type = "response")
roc_obj <- roc(datos_logit$CLASF_IP_BIN, probabilidades)
## Setting levels: control = 0, case = 1
## Setting direction: controls < cases
plot(roc_obj, main = "Curva ROC del Modelo Logístico")

auc(roc_obj)
## Area under the curve: 0.9994