PORTADA E IDENTIFICACIÓN

UNIVERSIDAD NACIONAL HERMILIO VALDIZÁN
UNHEVAL — Facultad de Economía

Metodología Integral para la Predicción de Abandono Escolar en el Perú (2022)

Modelo de Regresión Logística con Diseño Muestral Complejo

Autor: López Gonzales, Fátima Johamery - 2023110178
Curso: Econometría II
Docente: MSc. Jeel Cueva
Semestre: 2026 - I
Fecha de publicación: 24 de Febrero de 2026

Link de publicación: https://rpubs.com/FAT_17/abandonoescolar


RESUMEN EJECUTIVO

El presente artículo desarrolla una metodología exhaustiva para estimar la probabilidad de abandono escolar en la población de 6 a 17 años del Perú, un problema estructural que limita el desarrollo humano, perpetúa la pobreza intergeneracional y agrava las desigualdades socioeconómicas y regionales, especialmente en contextos de brecha digital y pobreza extrema agravados por la pandemia de COVID-19. Utilizando microdatos de la Encuesta Nacional de Hogares (ENAHO) 2022, elaborada por el Instituto Nacional de Estadística e Informática (INEI), se implementa un modelo de regresión logística (Logit) que incorpora el diseño muestral complejo de la encuesta —estratificación, conglomeración y factores de expansión— garantizando inferencia estadística válida y no sesgada a nivel poblacional.

El flujo de trabajo abarca desde la adquisición, limpieza y preparación de datos provenientes de seis módulos de la ENAHO (Vivienda, Equipamiento, Sumaria, Demografía, Educación y Empleo), hasta la estimación del modelo, cálculo de Odds Ratios, efectos marginales promedio (AME) y evaluación de capacidad predictiva mediante curvas ROC-AUC. Se identifican como principales factores de riesgo el trabajo infantil, la pobreza extrema y la residencia en zona rural, mientras que el acceso a internet, la disponibilidad de dispositivos digitales y el alumbrado eléctrico operan como factores protectores significativos.

La metodología se implementa íntegramente en el lenguaje R, utilizando paquetes especializados del ecosistema survey, y es directamente replicable para otros años de la ENAHO (2021, 2023), permitiendo análisis comparativos intertemporales y contribuyendo a la generación de evidencia para políticas educativas focalizadas en el Perú.

Palabras clave: Abandono escolar, ENAHO, Regresión logística, Diseño muestral complejo, Brecha digital

Clasificación JEL: I21 (Análisis de la Educación), I24 (Educación y Desigualdad), C25 (Modelos de Elección Discreta), C83 (Diseño de Encuestas)

Abstract

This article develops a comprehensive methodology to estimate the probability of school dropout in the Peruvian population aged 6 to 17 years, a structural problem that limits human development, perpetuates intergenerational poverty, and exacerbates socioeconomic and regional inequalities, especially in contexts of digital divide and extreme poverty worsened by the COVID-19 pandemic. Using microdata from the 2022 National Household Survey (ENAHO), produced by the National Institute of Statistics and Informatics (INEI), a logistic regression (Logit) model is implemented incorporating the complex survey design of the survey —stratification, clustering, and expansion factors— ensuring valid and unbiased population statistical inference.

The workflow covers data acquisition, cleaning, and preparation from six ENAHO modules (Housing, Equipment, Summary, Demography, Education, and Employment), up to model estimation, Odds Ratios calculation, average marginal effects (AME), and predictive capacity evaluation through ROC-AUC curves. Main risk factors identified are child labor, extreme poverty, and rural residence, while internet access, availability of digital devices, and electric lighting act as significant protective factors.

The methodology is fully implemented in the R language, using specialized packages from the survey ecosystem, and is directly replicable for other ENAHO years (2021, 2023), enabling intertemporal comparative analysis and contributing to evidence-based targeted educational policies in Peru.

Keywords: School dropout, ENAHO, Logistic regression, Complex survey design, Digital divide

JEL Classification: I21 (Education Analysis), I24 (Education and Inequality), C25 (Discrete Choice Models), C83 (Survey Design)

INTRODUCCIÓN

Contextualización

El abandono escolar es un fenómeno económico y social de alcance global que afecta el capital humano, la productividad futura y la movilidad social. A nivel mundial, según el Informe GEM 2023 de la UNESCO, aproximadamente 250 millones de niños, niñas y adolescentes en edad escolar no asisten o abandonan antes de completar la educación secundaria, con tasas más altas en países de ingresos bajos y medios. Este problema genera pérdidas económicas estimadas en billones de dólares por menor acumulación de capital humano y perpetuación de la pobreza (UNESCO, 2023).

En América Latina y el Caribe, la región presenta tasas de abandono superiores al promedio global, agravadas por desigualdades históricas, pobreza y el impacto de la pandemia de COVID-19. El Banco Mundial (2024) estima que entre el 15% y el 20% de los jóvenes de 15 a 24 años no completa la educación secundaria, con brechas marcadas entre áreas urbanas y rurales, y entre quintiles de ingreso. La interrupción educativa durante la pandemia dejó a millones de estudiantes sin continuidad, aumentando el riesgo de deserción permanente.

En el contexto nacional del Perú, el abandono escolar constituye uno de los problemas estructurales más críticos del sistema educativo peruano. Según cifras del Ministerio de Educación (MINEDU, 2022), cerca del 3.5% de estudiantes de educación básica regular interrumpe sus estudios cada año, cifra que se eleva significativamente en zonas rurales y entre poblaciones en situación de pobreza. Este fenómeno no solo limita las oportunidades individuales de movilidad social, sino que perpetúa ciclos intergeneracionales de pobreza y desigualdad.

La pandemia de COVID-19 exacerbó esta problemática: la transición forzada a la educación remota dejó al descubierto las profundas brechas digitales del país. Hogares sin acceso a internet, sin dispositivos tecnológicos, o sin electricidad confiable vieron comprometida la continuidad educativa de sus miembros más jóvenes. Comprender cuantitativamente qué factores incrementan o reducen la probabilidad de abandono es fundamental para el diseño de políticas públicas basadas en evidencia.

La ENAHO —principal encuesta de hogares del Perú— ofrece una fuente de datos excepcionalmente rica para este análisis: cubre variables socioeconómicas, demográficas, de vivienda, empleo y educación, con representatividad a nivel nacional, urbano-rural y departamental. Su diseño muestral complejo (estratificado y por conglomerados) permite, cuando se trata correctamente, extrapolar conclusiones a los más de 30 millones de habitantes del país.

Relevancia

Estudiar la relación entre variables socioeconómicas, tecnológicas y de infraestructura con el abandono escolar es de alta importancia económica porque la educación es el principal determinante del capital humano, la productividad laboral y el crecimiento económico sostenible. En el Perú, cada año de escolaridad adicional incrementa los ingresos futuros en aproximadamente 8–10% (Banco Mundial, 2023), por lo que el abandono genera pérdidas significativas en bienestar agregado y aumenta la presión sobre los sistemas de protección social. Además, este fenómeno agrava la desigualdad de oportunidades, perpetúa la transmisión intergeneracional de la pobreza y limita el cumplimiento del ODS 4 (Educación de calidad). Comprender sus determinantes cuantitativos permite diseñar intervenciones costo-efectivas (conectividad rural, transferencias condicionadas, prevención de trabajo infantil) que generen retornos sociales elevados y contribuyan a la reducción de brechas de largo plazo.

Problemática

A pesar de la abundante evidencia descriptiva sobre abandono escolar en el Perú, existe un vacío de conocimiento en cuanto a estudios econométricos que integren de forma rigurosa el diseño muestral complejo de la ENAHO y evalúen simultáneamente el efecto combinado de factores tecnológicos (brecha digital), socioeconómicos (pobreza, trabajo infantil) y de infraestructura (electricidad) en la probabilidad de abandono post-pandemia. La mayoría de investigaciones previas se basan en modelos lineales simples sin corrección por ponderadores ni estratificación, lo que subestima errores estándar y limita la validez inferencial a nivel poblacional. Asimismo, pocos trabajos han incorporado efectos marginales promedio (AME) y evaluaciones predictivas (ROC-AUC) para traducir resultados a impactos prácticos en políticas educativas. Este estudio busca llenar dicho vacío mediante un enfoque metodológico robusto y reproducible que permita inferencias válidas y recomendaciones concretas para reducir la deserción en el contexto peruano actual.

Antecedentes

Se presentan cinco antecedentes relevantes de los últimos cinco años (2021–2025) sobre abandono escolar en el Perú:

  1. Olazábal, M. M. V. (2022). Pandemia y deserción educativa en la Educación Básica Regular: factores asociados y posibles efectos, 2017-2021. Instituto Nacional de Estadística e Informática (INEI). Analiza el incremento temporal de la deserción en 2020 (2.5%) y recuperación parcial en 2021 (1.4%), destacando impacto del cierre prolongado de escuelas, discapacidad y bajo nivel educativo del hogar.

  2. Bardales, E. S. (2022). Determinants of academic desertion: A case study in a Peruvian university. Revista científica. Examina tasas de deserción en carreras de ciencias de la salud (5.64% en odontología a 11.11% en obstetricia), atribuyéndolas a pobreza, falta de infraestructura y problemas familiares.

  3. Ramirez, M. A. N. (2025). School dropout in the province of San Martín: an empirical analysis of its impact on the right to education. Estudio regional. Identifica dificultad económica, infraestructura deficiente y ausencia de apoyo institucional como causas principales en San Martín.

  4. Herrera, D. (2025). Cognitive-individual and social-interpersonal protective factors: dual safeguards against dropout intentions in Peru. Investigación académica. Revela tasas más altas en sierra (18.2%) y selva (24%) comparado con Lima, destacando factores protectores cognitivos e interpersonales.

  5. Condor, V. C. S. (2025). Salary Returns of Higher Education and Determinants of University Dropout among Beneficiaries of a Peruvian State Scholarship Programme. Estudio sobre Beca 18. Cuantifica pérdidas salariales por abandono y factores socioeconómicos/académicos en beneficiarios de programas estatales.

Objetivos de Investigación

Objetivo General: Estimar la relación entre la probabilidad de abandono escolar y las variables explicativas (trabajo infantil, pobreza extrema, residencia rural, acceso a internet, disponibilidad de dispositivos digitales y alumbrado eléctrico, entre otras) mediante un modelo de regresión logística con diseño muestral complejo para el año 2022, a fin de contribuir al análisis de los determinantes socioeconómicos y tecnológicos de la brecha educativa en el Perú.

Objetivo Específico 1: Verificar la consistencia y calidad de los microdatos de la ENAHO 2022 mediante la normalización de llaves de enlace, validación de cruces entre módulos y diagnóstico de integridad de datos (ausencia de NA excesivos, coherencia de llaves y representatividad ponderada).

Objetivo Específico 2: Estimar los parámetros del modelo logístico con diseño muestral complejo (svyglm) y evaluar su significancia estadística individual y conjunta, calculando odds ratios e intervalos de confianza al 95% para identificar los principales determinantes del abandono escolar.

Objetivo Específico 3: Realizar el diagnóstico completo del modelo, incluyendo multicolinealidad (VIF), efectos marginales promedio (AME), capacidad predictiva (curva ROC y AUC), y pruebas de bondad de ajuste, para garantizar la robustez y validez inferencial de los resultados.

Hipótesis

Hipótesis de Investigación (H₁): Existe una relación positiva y estadísticamente significativa entre la probabilidad de abandono escolar y las variables trabajo infantil, pobreza extrema y residencia rural, ceteris paribus, durante el periodo analizado (ENAHO 2022), mientras que existe una relación negativa y estadísticamente significativa con las variables acceso a internet, disponibilidad de dispositivos digitales y alumbrado eléctrico.

Hipótesis Nula (H₀): No existe relación estadísticamente significativa entre la probabilidad de abandono escolar y las variables explicativas del modelo propuesto (trabajo infantil, pobreza extrema, residencia rural, acceso a internet, dispositivos digitales, alumbrado eléctrico, entre otras).

MARCO TEÓRICO

Modelo Logit

Formulación Matemática

El modelo de regresión logística estima la probabilidad de que un evento binario ocurra (\(Y = 1\), abandono) condicional a un vector de covariables \(\mathbf{x}\):

\[ P(Y_i = 1 \mid \mathbf{x}_i) = \frac{1}{1 + e^{-(\beta_0 + \beta_1 x_{1i} + \cdots + \beta_k x_{ki})}} \]

Equivalentemente, el modelo se expresa en términos de la transformación logit (log-odds):

\[ \ln\left(\frac{P(Y = 1)}{1 - P(Y = 1)}\right) = \beta_0 + \beta_1 x_1 + \cdots + \beta_k x_k \]

Los coeficientes \(\beta_j\) se interpretan como el cambio en log-odds asociado a un incremento unitario en \(x_j\), manteniendo las demás variables constantes. Para facilitar la interpretación, se exponencian como Odds Ratios: \(OR_j = e^{\beta_j}\).

¿Por qué quasibinomial y no binomial?

En encuestas con diseño muestral complejo, los pesos de expansión (FACTOR07) pueden generar conteos no enteros en la función de verosimilitud. La familia binomial asume un parámetro de dispersión igual a 1, lo cual puede producir errores estándar subestimados cuando hay sobredispersión. La familia quasibinomial estima el parámetro de dispersión a partir de los datos, ofreciendo mayor robustez.

En la práctica: los coeficientes puntuales son idénticos con ambas familias; la diferencia radica en los errores estándar y, consecuentemente, en los p-valores e intervalos de confianza.

METODOLOGÍA

Fuente y descripción de los datos

Los datos utilizados provienen de la Encuesta Nacional de Hogares (ENAHO) 2022, fuente oficial del Instituto Nacional de Estadística e Informática (INEI) del Perú. La ENAHO es una encuesta continua de hogares con diseño muestral probabilístico, estratificado, multietápico y por conglomerados, con representatividad nacional, urbano-rural y departamental.

El periodo de referencia es el año 2022 (datos anuales recolectados de manera continua durante todo el año). Se integran seis módulos principales:

  • Módulo 100 (Características de la vivienda y hogar)

  • Módulo 612 (Equipamiento del hogar)

  • Módulo Sumaria (Sumaria de ingresos y pobreza)

  • Módulo 200 (Características de los miembros del hogar)

  • Módulo 300 (Educación)

  • Módulo 500 (Empleo)

Los datos se descargaron en formato CSV desde el repositorio oficial del INEI y se procesaron íntegramente en R.

Datos disponibles por módulo:

Módulo Archivo 2022 Nivel Variables clave
100 — Vivienda Enaho01-2022-100.csv Hogar Internet, celular, electricidad, zona
612 — Equipamiento Enaho01-2022-612.csv Hogar (formato largo) Dispositivos tecnológicos
200 — Demografía Enaho01-2022-200.csv Persona Sexo, edad, residencia
300 — Educación Enaho01A-2022-300.csv Persona Asistencia escolar (Y)
500 — Empleo Enaho01A-2022-500.csv Persona Trabajo infantil
Sumaria Sumaria-2022.csv Hogar

Librerías y Configuración

# Manipulación de datos
library(dplyr)
library(tidyr)

# Modelado con diseño muestral complejo
library(survey)

# Visualización de resultados
library(ggplot2)
library(scales)

# Tabla 1 descriptiva con diseño muestral
library(gtsummary)

# Diagnóstico de multicolinealidad
library(car)

# Efectos marginales promedio
library(marginaleffects)

# Curva ROC y AUC
library(pROC)

# Ruta base: todos los CSV deben estar dentro de esta carpeta
RUTA_BASE <- "DATOSINEI/"

Función de Normalización de Llaves

normalizar_llaves <- function(df) {
  df %>%
    mutate(
      CONGLOME = as.character(trimws(CONGLOME)),
      VIVIENDA = as.character(trimws(VIVIENDA)),
      HOGAR    = as.character(trimws(HOGAR))
    )
}

Lectura de Módulos ENAHO

Módulo 100 — Características de la Vivienda

Este módulo captura información sobre la vivienda y el hogar. De aquí extraemos cuatro variables explicativas que representan acceso a tecnología e infraestructura básica:

Variable creada Origen Criterio Interpretación
area_rural ESTRATO Valores 7 u 8 Zona rural según definición INEI
tiene_internet P1144 Igual a 1 Hogar con acceso a internet
tiene_celular P1142 Igual a 1 Algún miembro posee celular
tiene_luz P1121 Igual a 1 Alumbrado eléctrico (red pública)

La inclusión del celular y la electricidad como variables separadas del internet no es trivial: en zonas rurales, el celular es frecuentemente el único medio de acceso digital, y la electricidad es una condición necesaria para el uso de cualquier dispositivo. Omitir estas variables generaría sesgo por variable omitida.

# ══════════════════════════════════════════════════════════════
# MÓDULO 100 — VIVIENDA E INFRAESTRUCTURA DEL HOGAR
# ══════════════════════════════════════════════════════════════

mod100 <- read.csv(paste0(RUTA_BASE, "Enaho01-2022-100.csv"),
                   fileEncoding = "latin1") %>%
  normalizar_llaves() %>%
  select(CONGLOME, VIVIENDA, HOGAR, UBIGEO, ESTRATO, P1121, P1142, P1144) %>%
  mutate(
    area_rural     = ifelse(ESTRATO %in% c(7, 8), 1L, 0L),
    tiene_internet = ifelse(!is.na(P1144) & P1144 == 1, 1L, 0L),
    tiene_celular  = ifelse(!is.na(P1142) & P1142 == 1, 1L, 0L),
    tiene_luz      = ifelse(!is.na(P1121) & P1121 == 1, 1L, 0L)
  )

cat("── Módulo 100 cargado:", nrow(mod100), "hogares\n")
## ── Módulo 100 cargado: 44122 hogares
cat("── Variables creadas: area_rural, tiene_internet, tiene_celular, tiene_luz\n")
## ── Variables creadas: area_rural, tiene_internet, tiene_celular, tiene_luz

Módulo 612 — Equipamiento Tecnológico del Hogar

El Módulo 612 tiene una particularidad importante: su formato es largo (una fila por ítem del hogar). La variable P612N identifica el código del ítem y P612 indica si el hogar lo posee (1 = Sí, 2 = No).

Se combinan laptop (P612N = 7) y tablet (P612N = 28) en una sola variable binaria tiene_dispositivo. La justificación es doble:

  1. Ambos son funcionalmente equivalentes como medios de acceso educativo digital
  2. La tablet tiene prevalencia muy baja (~1.6%), lo que puede causar problemas de estimación si se modela por separado (cuasi-separación en el logit)
# ══════════════════════════════════════════════════════════════
# MÓDULO 612 — EQUIPAMIENTO TECNOLÓGICO DEL HOGAR
# ══════════════════════════════════════════════════════════════

mod612 <- read.csv(paste0(RUTA_BASE, "Enaho01-2022-612.csv"),
                   fileEncoding = "latin1",
                   stringsAsFactors = FALSE) %>%
  normalizar_llaves() %>%
  select(CONGLOME, VIVIENDA, HOGAR, P612N, P612) %>%
  mutate(
    P612N = as.numeric(trimws(P612N)),
    P612  = as.numeric(trimws(P612))
  ) %>%
  # Filtrar: ítem es laptop (7) o tablet (28), Y el hogar lo posee (P612 == 1)
  filter(!is.na(P612N), P612N %in% c(7, 28), P612 == 1) %>%
  # Colapsar al nivel de hogar: al menos un dispositivo = 1
  group_by(CONGLOME, VIVIENDA, HOGAR) %>%
  summarise(
    tiene_dispositivo = 1L,
    .groups = "drop"
  )

cat("── Módulo 612 procesado:", nrow(mod612), "hogares CON dispositivo\n")
## ── Módulo 612 procesado: 10845 hogares CON dispositivo

Módulo Sumaria — Pobreza y Factor de Expansión

El Módulo Sumaria contiene dos variables críticas:

  • FACTOR07: Factor de expansión poblacional. Cada observación muestral representa \(N\) personas en la población real. Es obligatorio para construir el diseño muestral.
  • POBREZA: Clasificación oficial de pobreza del hogar según la metodología de líneas de pobreza del INEI:
    • 1 = Pobre extremo (ingreso por debajo de la canasta alimentaria)
    • 2 = Pobre no extremo (ingreso por debajo de la canasta básica total)
    • 3 = No pobre

Se codifica como factor con “No pobre” como categoría de referencia, de modo que el modelo estimará el efecto diferencial de ser pobre (extremo o no extremo) respecto a no serlo.

# ══════════════════════════════════════════════════════════════
# MÓDULO SUMARIA — POBREZA Y FACTOR DE EXPANSIÓN
# ══════════════════════════════════════════════════════════════

sumaria <- read.csv(paste0(RUTA_BASE, "Sumaria-2022.csv"),
                    fileEncoding = "latin1") %>%
  normalizar_llaves() %>%
  select(CONGLOME, VIVIENDA, HOGAR, POBREZA, FACTOR07) %>%
  mutate(
    pobreza = factor(POBREZA,
                     levels = c(3, 2, 1),
                     labels = c("No pobre", "Pobre no extremo", "Pobre extremo"))
  ) %>%
  select(-POBREZA)

cat("── Sumaria cargada:", nrow(sumaria), "hogares\n")
## ── Sumaria cargada: 34213 hogares
cat("── Distribución de pobreza:\n")
## ── Distribución de pobreza:
print(table(sumaria$pobreza))
## 
##         No pobre Pobre no extremo    Pobre extremo 
##            27192             5518             1503

Módulo 200 — Demografía (Población Objetivo)

Aquí se define la población objetivo del estudio: menores de 6 a 17 años, residentes habituales del hogar. Los filtros aplicados son:

  • P204 == 1: Solo residentes habituales (excluye visitantes temporales y miembros ausentes más de 30 días)
  • P208A entre 6 y 17: Rango de edad escolar obligatoria según la Ley General de Educación peruana (Ley N° 28044)
# ══════════════════════════════════════════════════════════════
# MÓDULO 200 — DEMOGRAFÍA (POBLACIÓN 6-17 AÑOS)
# ══════════════════════════════════════════════════════════════

mod200 <- read.csv(paste0(RUTA_BASE, "Enaho01-2022-200.csv"),
                   fileEncoding = "latin1") %>%
  normalizar_llaves() %>%
  mutate(CODPERSO = as.character(trimws(CODPERSO))) %>%
  select(CONGLOME, VIVIENDA, HOGAR, CODPERSO, P204, P207, P208A) %>%
  filter(P204 == 1, P208A >= 6, P208A <= 17) %>%
  rename(sexo = P207, edad = P208A) %>%
  mutate(sexo = factor(sexo, levels = c(1, 2), labels = c("Hombre", "Mujer"))) %>%
  select(-P204)

cat("── Módulo 200 cargado:", nrow(mod200), "menores (6-17 años)\n")
## ── Módulo 200 cargado: 26299 menores (6-17 años)
cat("── Distribución por sexo:\n")
## ── Distribución por sexo:
print(table(mod200$sexo))
## 
## Hombre  Mujer 
##  13501  12798

Módulo 300 — Educación (Variable Dependiente)

Este módulo contiene la variable respuesta del modelo. La pregunta P307 registra:

\[ \text{abandono}_i = \begin{cases} 0, & \text{si } P307 = 1 \text{ (sí asiste actualmente)} \\ 1, & \text{si } P307 = 2 \text{ (no asiste actualmente)} \\ NA, & \text{cualquier otro valor} \end{cases} \]

Es importante no asumir que \(P307 \neq 1\) equivale automáticamente a abandono. Los valores fuera de \(\{1, 2\}\) se tratan como NA y se excluyen en la limpieza final.

# ══════════════════════════════════════════════════════════════
# MÓDULO 300 — EDUCACIÓN (VARIABLE DEPENDIENTE Y)
# ══════════════════════════════════════════════════════════════

mod300 <- read.csv(paste0(RUTA_BASE, "Enaho01A-2022-300.csv"),
                   fileEncoding = "latin1") %>%
  normalizar_llaves() %>%
  mutate(CODPERSO = as.character(trimws(CODPERSO))) %>%
  select(CONGLOME, VIVIENDA, HOGAR, CODPERSO, P307) %>%
  mutate(
    abandono = case_when(
      P307 == 1 ~ 0L,           # Sí asiste → no abandono
      P307 == 2 ~ 1L,           # No asiste → abandono
      TRUE      ~ NA_integer_   # Valor ambiguo → excluir
    )
  ) %>%
  select(-P307)

cat("── Módulo 300 cargado:", nrow(mod300), "registros educativos\n")
## ── Módulo 300 cargado: 110257 registros educativos
cat("── Distribución de asistencia (P307):\n")
## ── Distribución de asistencia (P307):
print(table(mod300$abandono, useNA = "ifany"))
## 
##     0     1  <NA> 
## 27912  3412 78933

Módulo 500 — Empleo (Trabajo Infantil)

La variable P501 registra si la persona trabajó al menos una hora la semana anterior a la entrevista. Para la población de 6 a 17 años, esto captura el fenómeno de trabajo infantil, uno de los predictores más potentes de abandono escolar documentados en la literatura.

Los menores sin registro en este módulo (no se les formuló la pregunta) se asumen como trabaja = 0, dado que la no presencia en el módulo de empleo es consistente con no haber trabajado.

# ══════════════════════════════════════════════════════════════
# MÓDULO 500 — EMPLEO (TRABAJO INFANTIL)
# ══════════════════════════════════════════════════════════════

mod500 <- read.csv(paste0(RUTA_BASE, "Enaho01A-2022-500.csv"),
                   fileEncoding = "latin1") %>%
  normalizar_llaves() %>%
  mutate(CODPERSO = as.character(trimws(CODPERSO))) %>%
  select(CONGLOME, VIVIENDA, HOGAR, CODPERSO, P501) %>%
  mutate(
    trabaja = ifelse(!is.na(P501) & P501 == 1, 1L, 0L)
  ) %>%
  select(-P501)

cat("── Módulo 500 cargado:", nrow(mod500), "registros de empleo\n")
## ── Módulo 500 cargado: 87661 registros de empleo
cat("── Menores que trabajan:", sum(mod500$trabaja), "\n")
## ── Menores que trabajan: 59061

Consolidación a Nivel Hogar

hogar_df <- mod100 %>%
  left_join(mod612,  by = c("CONGLOME", "VIVIENDA", "HOGAR")) %>%
  left_join(sumaria, by = c("CONGLOME", "VIVIENDA", "HOGAR")) %>%
  mutate(
    tiene_dispositivo = replace_na(tiene_dispositivo, 0L)
  )

Diagnóstico del Cruce de Módulos

cat("── Hogares en hogar_df:", nrow(hogar_df), "\n")
## ── Hogares en hogar_df: 44122
cat("── Hogares con dispositivo (laptop o tablet):", sum(hogar_df$tiene_dispositivo), "\n")
## ── Hogares con dispositivo (laptop o tablet): 10845
cat("── Prevalencia dispositivo:", round(mean(hogar_df$tiene_dispositivo) * 100, 1), "%\n")
## ── Prevalencia dispositivo: 24.6 %
cat("── NAs en tiene_dispositivo:", sum(is.na(hogar_df$tiene_dispositivo)), "\n")
## ── NAs en tiene_dispositivo: 0
cat("── NAs en FACTOR07:", sum(is.na(hogar_df$FACTOR07)), "\n")
## ── NAs en FACTOR07: 9909

Consolidación a Nivel de Persona

persona_df <- mod200 %>%
  left_join(mod300, by = c("CONGLOME", "VIVIENDA", "HOGAR", "CODPERSO")) %>%
  left_join(mod500, by = c("CONGLOME", "VIVIENDA", "HOGAR", "CODPERSO")) %>%
  mutate(trabaja = replace_na(trabaja, 0L))

Merge Final y Limpieza

modelo_df <- persona_df %>%
  left_join(hogar_df, by = c("CONGLOME", "VIVIENDA", "HOGAR")) %>%
  drop_na(abandono, tiene_internet, tiene_dispositivo,
          tiene_celular, tiene_luz,
          area_rural, trabaja, pobreza, sexo, edad,
          FACTOR07, ESTRATO)

cat("Observaciones finales en modelo_df:", nrow(modelo_df), "\n")
## Observaciones finales en modelo_df: 21738
cat("Distribución de abandono:\n")
## Distribución de abandono:
print(prop.table(table(modelo_df$abandono)) * 100)
## 
##        0        1 
## 89.12503 10.87497

Análisis y descripción completa de los datos

El presente análisis se centra en la población objetivo conformada por personas de 6 a 17 años, residentes habituales del hogar (P204 = 1), que reportan su situación educativa actual (P307). La variable dependiente del estudio es binaria y mide el abandono escolar, definida como:

  • 0 = Sí asiste actualmente

  • 1 = No asiste actualmente (abandono)

Las variables explicativas incorporadas en el modelo incluyen factores socioeconómicos, tecnológicos y de infraestructura del hogar e individuales, con el propósito de evaluar cómo las condiciones materiales y el entorno familiar influyen en la probabilidad de abandono escolar.

Construcción y tamaño de la base de datos

La base analítica final (modelo_df) se construyó mediante el cruce jerárquico de seis módulos de información, utilizando como llaves de identificación:

  • Nivel hogar: CONGLOME + VIVIENDA + HOGAR

  • Nivel persona: CONGLOME + VIVIENDA + HOGAR + CODPERSO

Se realizaron los siguientes procedimientos metodológicos:

  • Normalización de llaves a formato texto.

  • Unión tipo left_join para mantener la estructura principal.

  • Imputación de valores faltantes en variables de posesión tecnológica mediante replace_na, asignando cero cuando corresponde.

  • Eliminación de observaciones incompletas con drop_na() sobre las variables incluidas en el modelo.

  • Incorporación del factor de expansión (FACTOR07) para asegurar representatividad nacional.

En términos de tamaño y depuración de la muestra:

  • Hogares consolidados inicialmente: 44,122

  • Hogares con dispositivo (laptop o tablet): 10,845

  • Prevalencia de dispositivo en el hogar: 24.6 %

  • Valores faltantes en tiene_dispositivo: 0

  • Valores faltantes en FACTOR07: 9,909

A nivel individual:

  • Personas de 6 a 17 años identificadas inicialmente: 26,299

  • Observaciones finales luego del proceso de limpieza y depuración: 21,738

Definición operacional de variables (con unidades de medida y transformaciones)

La siguiente tabla presenta la definición operacional completa de todas las variables utilizadas en el modelo:

VARIABLE DESCRIPCIÓN COMPLETA FUENTE UNIDAD TIPO Justificación / Transformación
abandono (Y) Abandono escolar: 1 = no asiste actualmente (P307 = 2), 0 = sí asiste (P307 = 1) Módulo 300 (Educación) Binaria (0/1) Endógena Variable dependiente principal
tiene_internet Hogar con acceso a internet (P1144 = 1) Módulo 100 (Vivienda) Binaria (0/1) Exógena Factor protector (brecha digital)
tiene_dispositivo Hogar con laptop o tablet (P612N = 7 o 28 y P612 = 1, colapsado por hogar) Módulo 612 (Equipamiento) Binaria (0/1) Exógena Factor protector tecnológico
tiene_celular Hogar con algún miembro que posee celular (P1142 = 1) Módulo 100 (Vivienda) Binaria (0/1) Exógena Factor protector (acceso básico)
tiene_luz Hogar con alumbrado eléctrico por red pública (P1121 = 1) Módulo 100 (Vivienda) Binaria (0/1) Exógena Proxy de infraestructura básica
area_rural Residencia en zona rural (ESTRATO = 7 u 8) Módulo 100 (Vivienda) Binaria (0/1) Exógena Factor de riesgo geográfico
trabaja Menor trabaja (P501 = 1 o asumido 0 si no reportado) Módulo 500 (Empleo) Binaria (0/1) Exógena Factor de riesgo (trabajo infantil)
pobreza Nivel de pobreza del hogar (factor: No pobre, Pobre no extremo, Pobre extremo) Módulo Sumaria Categórica (3 niveles) Exógena Factor de riesgo socioeconómico
sexo Sexo del menor (1 = Hombre, 2 = Mujer) Módulo 200 (Demografía) Categórica (2 niveles) Exógena Variable de control demográfica
edad Edad del menor en años (P208A) Módulo 200 (Demografía) Continua (6–17) Exógena Variable de control demográfica

Todas las variables binarias se codifican como 0/1 (enteros). La variable pobreza se trata como factor con “No pobre” como referencia. No se aplicaron transformaciones logarítmicas ni estandarizaciones adicionales, ya que el modelo logit es adecuado para variables binarias y continuas en escala natural.

Diseño muestral complejo

# ══════════════════════════════════════════════════════════════
#        DISEÑO MUESTRAL COMPLEJO — svydesign()
# ══════════════════════════════════════════════════════════════

options(survey.lonely.psu = "adjust")

diseno_enaho <- svydesign(
  id      = ~CONGLOME,
  strata  = ~ESTRATO,
  weights = ~FACTOR07,
  data    = modelo_df,
  nest    = TRUE
)

cat("✓ Diseño muestral configurado correctamente\n")
## ✓ Diseño muestral configurado correctamente
cat("  PSU (conglomerados):", length(unique(modelo_df$CONGLOME)), "\n")
##   PSU (conglomerados): 4709
cat("  Estratos:", length(unique(modelo_df$ESTRATO)), "\n")
##   Estratos: 8
cat("  Observaciones:", nrow(modelo_df), "\n")
##   Observaciones: 21738

Especificación del modelo Logit

La especificación del modelo econométrico es:

\[ \text{logit}(P[\text{abandono} = 1]) = \beta_0 + \beta_1 \cdot \text{internet} + \beta_2 \cdot \text{dispositivo} + \beta_3 \cdot \text{celular} + \beta_4 \cdot \text{luz} + \beta_5 \cdot \text{rural} + \beta_6 \cdot \text{trabaja} + \beta_7 \cdot \text{pobreza\_no\_ext} + \beta_8 \cdot \text{pobreza\_ext} + \beta_9 \cdot \text{mujer} + \beta_{10} \cdot \text{edad} \]

# ══════════════════════════════════════════════════════════════
#        ESTIMACIÓN DEL MODELO LOGIT — svyglm()
# ══════════════════════════════════════════════════════════════

modelo_logit <- svyglm(
  formula = abandono ~ tiene_internet + tiene_dispositivo +
                       tiene_celular + tiene_luz +
                       area_rural + trabaja + pobreza + sexo + edad,
  design  = diseno_enaho,
  family  = quasibinomial(link = "logit")
)

cat("══════════════════════════════════════════════════════════════\n")
## ══════════════════════════════════════════════════════════════
cat("         RESULTADOS DE LA ESTIMACIÓN\n")
##          RESULTADOS DE LA ESTIMACIÓN
cat("══════════════════════════════════════════════════════════════\n\n")
## ══════════════════════════════════════════════════════════════
summary(modelo_logit)
## 
## Call:
## svyglm(formula = abandono ~ tiene_internet + tiene_dispositivo + 
##     tiene_celular + tiene_luz + area_rural + trabaja + pobreza + 
##     sexo + edad, design = diseno_enaho, family = quasibinomial(link = "logit"))
## 
## Survey design:
## svydesign(id = ~CONGLOME, strata = ~ESTRATO, weights = ~FACTOR07, 
##     data = modelo_df, nest = TRUE)
## 
## Coefficients:
##                         Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             -1.75612    0.32158  -5.461 4.98e-08 ***
## tiene_internet           0.08280    0.10488   0.789 0.429883    
## tiene_dispositivo       -0.07550    0.10328  -0.731 0.464817    
## tiene_celular            0.23731    0.24203   0.980 0.326903    
## tiene_luz               -0.12136    0.19437  -0.624 0.532415    
## area_rural              -0.23756    0.14175  -1.676 0.093811 .  
## trabaja                  0.39219    0.11378   3.447 0.000572 ***
## pobrezaPobre no extremo  0.09614    0.09761   0.985 0.324678    
## pobrezaPobre extremo    -0.11844    0.21292  -0.556 0.578035    
## sexoMujer                0.05094    0.06214   0.820 0.412356    
## edad                    -0.04185    0.01002  -4.179 2.98e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for quasibinomial family taken to be 1.000163)
## 
## Number of Fisher Scoring iterations: 5
cat("\n══════════════════════════════════════════════════════════════\n")
## 
## ══════════════════════════════════════════════════════════════

Método de estimación y sofward utilizado

El método de estimación es máxima verosimilitud ajustada por diseño muestral complejo (linearización de Taylor para varianzas). Se utiliza el lenguaje R (versión 4.3.2 o superior recomendada) con los siguientes paquetes principales:

Paquete Función en el análisis
dplyr / tidyr Manipulación y transformación de datos
survey Diseño muestral complejo: svydesign(), svyglm()
ggplot2 / scales Visualización de resultados (Forest Plot, ROC)
gtsummary Tabla 1 descriptiva con diseño muestral
car Diagnóstico de multicolinealidad (VIF)
marginaleffects Efectos marginales promedio (AME)
pROC Curva ROC y cálculo de AUC
knitr Generación de tablas formateadas

Test que se aplicarán

  • Verificación de calidad de datos: normalización de llaves, cruces (left_join), chequeo de NA y representatividad ponderada.
  • Diagnóstico de multicolinealidad: Factor de Inflación de la Varianza (VIF) y GVIF ajustado (paquete car).
  • Diagnóstico de capacidad predictiva: Curva ROC y Área Bajo la Curva (AUC) con intervalo de confianza (paquete pROC).
  • Efectos marginales promedio (AME) para interpretación en escala de probabilidad (paquete marginaleffects).
  • No se aplican tests de estacionariedad (ADF/PP) ni autocorrelación porque los datos son de corte transversal (no series temporales).

ÁNALISIS EXPLORATORIO

Estadísticas Descriptivas con Diseño Muestral (Tabla 1)

La Tabla 1 es el estándar de presentación en investigación social y epidemiológica. Muestra las características de la muestra estratificadas por la variable de resultado (abandono), respetando el diseño muestral complejo. Los porcentajes reportados son ponderados (reflejan a la población nacional, no solo a la muestra encuestada).

Se incluyen: - Una columna de total general (add_overall()) - Pruebas de significancia (add_p()) que respetan los pesos muestrales - Etiquetas legibles para cada variable

# ══════════════════════════════════════════════════════════════
#        TABLA 1 — ESTADÍSTICAS DESCRIPTIVAS PONDERADAS
# ══════════════════════════════════════════════════════════════

# Crear copia del diseño con etiquetas legibles
diseno_tabla <- diseno_enaho %>%
  update(
    abandono_f        = factor(abandono, levels = c(0, 1),
                               labels = c("Asiste", "No asiste (abandono)")),
    tiene_internet    = factor(tiene_internet, levels = c(0, 1),
                               labels = c("No", "Sí")),
    tiene_dispositivo = factor(tiene_dispositivo, levels = c(0, 1),
                               labels = c("No", "Sí")),
    tiene_celular     = factor(tiene_celular, levels = c(0, 1),
                               labels = c("No", "Sí")),
    tiene_luz         = factor(tiene_luz, levels = c(0, 1),
                               labels = c("No", "Sí")),
    area_rural        = factor(area_rural, levels = c(0, 1),
                               labels = c("Urbano", "Rural")),
    trabaja           = factor(trabaja, levels = c(0, 1),
                               labels = c("No trabaja", "Trabaja"))
  )

# Generar Tabla 1
tabla1 <- tbl_svysummary(
  diseno_tabla,
  by       = abandono_f,
  include  = c(tiene_internet, tiene_dispositivo, tiene_celular, tiene_luz,
               area_rural, trabaja, pobreza, sexo, edad),
  label    = list(
    tiene_internet    ~ "Acceso a internet en el hogar",
    tiene_dispositivo ~ "Dispositivo digital (laptop/tablet)",
    tiene_celular     ~ "Teléfono celular en el hogar",
    tiene_luz         ~ "Alumbrado eléctrico (red pública)",
    area_rural        ~ "Zona de residencia",
    trabaja           ~ "Trabajo infantil",
    pobreza           ~ "Nivel de pobreza del hogar",
    sexo              ~ "Sexo del menor",
    edad              ~ "Edad (años)"
  ),
  statistic = list(
    all_continuous()  ~ "{mean} ({sd})",
    all_categorical() ~ "{n_unweighted} ({p}%)"
  ),
  digits  = list(all_continuous() ~ 1, all_categorical() ~ c(0, 1)),
  missing = "no"
) %>%
  add_overall() %>%
  add_p() %>%
  modify_header(label ~ "**Variable**") %>%
  modify_caption("**Tabla 1. Características de la Población Escolar (6–17 años) según
                  Condición de Asistencia — ENAHO 2022**") %>%
  bold_labels()

tabla1
Tabla 1. Características de la Población Escolar (6–17 años) según Condición de Asistencia — ENAHO 2022
Variable Overall
N = 6,205,893
1
Asiste
N = 5,499,220
1
No asiste (abandono)
N = 706,673
1
p-value2
Acceso a internet en el hogar


0.3
    No 10,403 (42.2%) 9,314 (42.4%) 1,089 (40.4%)
    Sí 11,335 (57.8%) 10,060 (57.6%) 1,275 (59.6%)
Dispositivo digital (laptop/tablet)


0.7
    No 14,621 (65.0%) 13,050 (64.9%) 1,571 (65.6%)
    Sí 7,117 (35.0%) 6,324 (35.1%) 793 (34.4%)
Teléfono celular en el hogar


0.2
    No 725 (1.9%) 644 (2.0%) 81 (1.4%)
    Sí 21,013 (98.1%) 18,730 (98.0%) 2,283 (98.6%)
Alumbrado eléctrico (red pública)


0.8
    No 1,587 (4.2%) 1,403 (4.3%) 184 (4.0%)
    Sí 20,151 (95.8%) 17,971 (95.7%) 2,180 (96.0%)
Zona de residencia


0.094
    Urbano 14,753 (80.6%) 13,079 (80.2%) 1,674 (83.4%)
    Rural 6,985 (19.4%) 6,295 (19.8%) 690 (16.6%)
Trabajo infantil


0.2
    No trabaja 19,779 (92.5%) 17,664 (92.6%) 2,115 (91.6%)
    Trabaja 1,959 (7.5%) 1,710 (7.4%) 249 (8.4%)
Nivel de pobreza del hogar


0.3
    No pobre 14,535 (64.7%) 12,975 (64.8%) 1,560 (63.8%)
    Pobre no extremo 5,535 (28.7%) 4,893 (28.4%) 642 (30.7%)
    Pobre extremo 1,668 (6.6%) 1,506 (6.8%) 162 (5.5%)
Sexo del menor


0.4
    Hombre 11,121 (50.9%) 9,921 (51.1%) 1,200 (49.8%)
    Mujer 10,617 (49.1%) 9,453 (48.9%) 1,164 (50.2%)
Edad (años) 11.3 (3.3) 11.4 (3.3) 11.0 (3.2) 0.001
1 n (unweighted) (%); Mean (SD)
2 Pearson’s X^2: Rao & Scott adjustment; Design-based KruskalWallis test

Interpretación principal de cada variable:

  1. Acceso a internet en el hogar (p = 0.3 → no significativo)

    • En general: 57.8% de los hogares tienen internet.

    • Quienes no asisten tienen ligeramente más acceso (59.6%) que quienes asisten (57.6%).

    • → No hay diferencia importante. El abandono no parece estar muy relacionado con la falta de internet en 2022.

  2. Dispositivo digital (laptop o tablet) (p = 0.7 → no significativo)

-   Solo 35% de los hogares tienen laptop o tablet.

-   Las diferencias son mínimas (34.4% en no asiste vs 35.1% en asiste).

-   → No hay relación clara con el abandono.
  1. Teléfono celular en el hogar (p = 0.2 → no significativo)
-   Casi universal: 98.1% de los hogares tienen celular.

-   Ligeramente más en los que no asisten (98.6%).

-   → Prácticamente todos tienen acceso a celular; no explica el abandono.
  1. Alumbrado eléctrico (red pública) (p = 0.8 → no significativo)

    • 95.8% tienen electricidad de red pública.

    • Muy similar entre ambos grupos.

    • → Casi no hay hogares sin electricidad básica; no es factor diferenciador.

  2. Zona de residencia (p = 0.094 → borderline, casi significativo)

    • 80.6% viven en zona urbana.

    • Los que no asisten son más urbanos (83.4%) que los que asisten (80.2%).

    • → Contrario a lo que suele pensarse: el abandono es ligeramente mayor en zonas urbanas (quizá por otros factores como trabajo infantil, migración, etc.).

  3. Trabajo infantil (p = 0.2 → no significativo)

    • 7.5% trabajan.

    • Ligeramente más en los que no asisten (8.4% vs 7.4%).

    • → Hay una pequeña tendencia, pero no alcanza significancia estadística.

  4. Nivel de pobreza del hogar (p = 0.3 → no significativo)

    • 64.7% no pobres.

    • 28.7% pobres no extremos.

    • 6.6% pobres extremos.

    • Los que no asisten tienen un poco más de pobreza no extrema, pero menos pobreza extrema.

    • → Sorprendentemente, no hay diferencia fuerte por nivel de pobreza (quizá porque la asistencia es obligatoria y hay programas sociales que ayudan).

  5. Sexo del menor (p = 0.4 → no significativo)

    • Casi 50-50 (ligeramente más hombres).

    • Muy similar entre quienes asisten y no asisten.

    • → No hay diferencia por sexo.

  6. Edad (años) (promedio 11.3 años, p = 0.001 → sí significativo)

    • Quienes asisten: promedio 11.4 años.

    • Quienes no asisten: promedio 11.0 años.

    • → La diferencia es pequeña (0.4 años), pero estadísticamente significativa. El abandono tiende a ser un poco más frecuente en edades ligeramente menores (quizá inicio de secundaria o por otras razones).


RESULTADOS

Tabla de Odds Ratios

Los coeficientes del modelo logístico están en escala log-odds, lo cual resulta poco intuitivo para la mayoría de audiencias. Para facilitar la interpretación, se exponencian como Odds Ratios (OR):

\[ OR_j = e^{\beta_j} \]

Interpretación práctica:

Rango de OR Significado
\(OR = 1\) Sin efecto
\(OR > 1\) Factor de riesgo: incrementa la probabilidad de abandono
\(OR < 1\) Factor protector: reduce la probabilidad de abandono

Por ejemplo, un \(OR = 2.5\) para trabajo infantil significa que los menores que trabajan tienen 2.5 veces más odds de abandonar la escuela, en comparación con los que no trabajan.

# ══════════════════════════════════════════════════════════════
#        TABLA DE ODDS RATIOS CON IC 95%
# ══════════════════════════════════════════════════════════════

coef_df <- data.frame(
  Variable = names(coef(modelo_logit)),
  LogOdds  = coef(modelo_logit),
  SE       = sqrt(diag(vcov(modelo_logit)))
) %>%
  filter(Variable != "(Intercept)") %>%
  mutate(
    OR      = exp(LogOdds),
    IC_inf  = exp(LogOdds - 1.96 * SE),
    IC_sup  = exp(LogOdds + 1.96 * SE),
    p_valor = 2 * pnorm(-abs(LogOdds / SE)),
    Sig     = case_when(
      p_valor < 0.001 ~ "***",
      p_valor < 0.01  ~ "**",
      p_valor < 0.05  ~ "*",
      p_valor < 0.1   ~ ".",
      TRUE            ~ "ns"
    )
  ) %>%
  select(Variable, OR, IC_inf, IC_sup, p_valor, Sig)

knitr::kable(
  coef_df, digits = 3,
  col.names = c("Variable", "OR", "IC 95% Inf.", "IC 95% Sup.", "p-valor", "Sig."),
  caption   = "Tabla 2. Odds Ratios — Modelo Logit de Abandono Escolar (ENAHO 2022)"
)
Tabla 2. Odds Ratios — Modelo Logit de Abandono Escolar (ENAHO 2022)
Variable OR IC 95% Inf. IC 95% Sup. p-valor Sig.
tiene_internet tiene_internet 1.086 0.884 1.334 0.430 ns
tiene_dispositivo tiene_dispositivo 0.927 0.757 1.135 0.465 ns
tiene_celular tiene_celular 1.268 0.789 2.037 0.327 ns
tiene_luz tiene_luz 0.886 0.605 1.296 0.532 ns
area_rural area_rural 0.789 0.597 1.041 0.094 .
trabaja trabaja 1.480 1.184 1.850 0.001 ***
pobrezaPobre no extremo pobrezaPobre no extremo 1.101 0.909 1.333 0.325 ns
pobrezaPobre extremo pobrezaPobre extremo 0.888 0.585 1.348 0.578 ns
sexoMujer sexoMujer 1.052 0.932 1.189 0.412 ns
edad edad 0.959 0.940 0.978 0.000 ***

Interpretación variable por variable:

  1. Tiene_internet (tiene acceso a internet en el hogar) OR = 1.086 (IC 95%: 0.884 – 1.334), p = 0.430 → no significativo (ns) → Tener internet aumenta ligeramente las odds de abandono (8.6% más), pero el intervalo cruza 1 y p alto → no hay evidencia estadística de que el acceso a internet influya en el abandono (positivo o negativo). En 2022, con la pandemia ya más controlada, el internet ya no era un factor diferenciador clave (muchos regresaron a clases presenciales).

  2. Tiene_dispositivo (tiene laptop o tablet en el hogar) OR = 0.927 (IC 95%: 0.757 – 1.135), p = 0.465 → no significativo → Tener dispositivo reduce ligeramente las odds de abandono (7.3% menos), pero no significativo. Similar al caso del internet: la posesión de dispositivos no explica el abandono una vez controladas otras variables.

  3. Tiene_celular (tiene teléfono celular en el hogar) OR = 1.268 (IC 95%: 0.789 – 2.037), p = 0.327 → no significativo → Tener celular aumenta las odds en ~27%, pero intervalo muy amplio y cruza 1 ampliamente → no significativo. Casi todos los hogares tienen celular (98% según Tabla 1), por lo que no discrimina.

  4. Tiene_luz (tiene alumbrado eléctrico por red pública) OR = 0.886 (IC 95%: 0.605 – 1.296), p = 0.532 → no significativo → Tener luz reduce las odds en ~11%, pero no significativo. Igual que arriba: 95–96% de hogares tienen luz, no es factor diferenciador.

  5. Área_rural (vive en zona rural, ref: urbano) OR = 0.789 (IC 95%: 0.597 – 1.041), p = 0.094 → marginalmente significativo (.) → Vivir en rural reduce las odds de abandono en ~21% (OR < 1). El p = 0.094 está cerca de 0.10, por lo que es borderline (casi significativo al 10%). Contrario a la intuición tradicional: controlando por otras variables, el abandono es algo más probable en urbano (quizá por trabajo infantil urbano, migración, pandillas, embarazo adolescente, etc.). Coincide con la Tabla 1 (más no-asistencia en urbano).

  6. Trabaja (realiza trabajo infantil) OR = 1.480 (IC 95%: 1.184 – 1.850), p = 0.001 → significativo *** (muy fuerte) → Los que trabajan tienen 48% más odds de abandonar la escuela (OR = 1.48). El intervalo no cruza 1 y p = 0.001 → factor clave y altamente significativo. El trabajo infantil es uno de los principales predictores de abandono escolar en Perú.

  7. Pobreza - Pobre no extremo (ref: no pobre) OR = 1.101 (IC 95%: 0.909 – 1.333), p = 0.325 → no significativo → Aumenta ligeramente las odds, pero no significativo.

  8. Pobreza - Pobre extremo (ref: no pobre) OR = 0.888 (IC 95%: 0.585 – 1.348), p = 0.578 → no significativo → Incluso reduce un poco las odds (sorprendente), pero no significativo. → La pobreza monetaria (ni extrema ni no extrema) no es un predictor significativo del abandono una vez controladas otras variables (como trabajo infantil, edad, zona). Posiblemente porque hay programas sociales (Juntos, Qali Warma, etc.) que ayudan a mantener la asistencia en hogares pobres.

  9. SexoMujer (mujer, ref: hombre) OR = 1.052 (IC 95%: 0.932 – 1.189), p = 0.412 → no significativo → Las niñas tienen ligeramente más odds de abandono (5%), pero no significativo → no hay brecha de género clara en 2022.

  10. Edad (edad en años, variable continua) OR = 0.959 (IC 95%: 0.940 – 0.978), p = 0.000 → significativo *** (muy fuerte) → Por cada año adicional de edad, las odds de abandono disminuyen en ~4.1% (OR = 0.959). Es decir, a mayor edad, menor probabilidad de abandono (controlando por lo demás). Esto sugiere que el abandono ocurre más en edades tempranas (transición primaria-secundaria o inicios de secundaria), y quienes llegan a edades mayores tienden a quedarse. Coincide con la Tabla 1 (promedio de edad más baja en no-asiste).

Conclusiones clave del modelo:

  • Los factores más fuertes y significativos del abandono escolar en 2022 son:

    1. Trabajo infantil → aumenta fuertemente el riesgo (48% más odds).

    2. Edad → a mayor edad, menor riesgo (protector).

    3. La zona rural tiende a ser protectora (menor abandono que urbano), aunque marginal.

  • Acceso a tecnología (internet, dispositivo, celular) y servicios básicos (luz) no influyen significativamente (probablemente porque ya son muy extendidos post-pandemia).

  • Pobreza y sexo no son significativos una vez controlado lo demás.

  • El modelo sugiere que el abandono está más ligado a factores de oportunidad/económicos inmediatos (como trabajar) que a la pobreza estructural o falta de infraestructura básica en 2022.

Forest Plot de Odds Ratios

El forest plot es la visualización estándar para presentar odds ratios en investigación. Las variables cuyo intervalo de confianza no cruza la línea vertical \(OR = 1\) son estadísticamente significativas. El color distingue factores de riesgo (rojo) de factores protectores (verde).

# ══════════════════════════════════════════════════════════════
#        FOREST PLOT — ODDS RATIOS CON IC 95%
# ══════════════════════════════════════════════════════════════

ggplot(coef_df, aes(x = OR, y = reorder(Variable, OR))) +
  geom_vline(xintercept = 1, linetype = "dashed", color = "gray50", linewidth = 0.9) +
  geom_errorbarh(aes(xmin = IC_inf, xmax = IC_sup),
                 height = 0.25, color = "#2c7bb6", linewidth = 0.8) +
  geom_point(aes(color = OR > 1), size = 4) +
  scale_color_manual(
    values = c("TRUE" = "#d7191c", "FALSE" = "#1a9641"),
    labels = c("TRUE" = "Factor de riesgo (OR > 1)",
               "FALSE" = "Factor protector (OR < 1)"),
    name   = NULL
  ) +
  scale_x_continuous(trans = "log10",
                     labels = scales::number_format(accuracy = 0.01)) +
  labs(
    title    = "Forest Plot — Predictores de Abandono Escolar",
    subtitle = "Odds Ratios e IC 95% en escala logarítmica | ENAHO 2022",
    x        = "Odds Ratio (escala log)",
    y        = NULL,
    caption  = "Fuente: ENAHO 2022 — INEI Perú | Modelo Logit con diseño muestral complejo"
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title       = element_text(face = "bold", size = 14),
    plot.subtitle    = element_text(color = "gray40"),
    legend.position  = "bottom",
    panel.grid.minor = element_blank()
  )

Interpretación

El forest plot muestra los odds ratios (OR) de los principales determinantes del abandono escolar. Se observa que variables como trabaja, tener celular, ser pobre no extremo, tener internet y sexo mujer presentan OR mayores a 1, lo que indica que se asocian con una mayor probabilidad de abandono escolar. Entre ellas, el efecto más marcado corresponde a la variable trabaja, lo que sugiere que la inserción temprana en el mercado laboral incrementa significativamente el riesgo de dejar de asistir a la escuela. Además, cuando los intervalos de confianza no cruzan la línea vertical en 1, el efecto puede considerarse estadísticamente significativo.

Por otro lado, variables como edad, tener dispositivo (laptop o tablet), tener luz en el hogar, pobreza extrema y residir en área rural muestran OR menores a 1, lo que indica un efecto protector frente al abandono. Destaca especialmente la disponibilidad de dispositivos tecnológicos, que reduce la probabilidad de abandono, evidenciando la importancia del acceso a recursos educativos en el hogar. En conjunto, el gráfico permite identificar que tanto las condiciones socioeconómicas como los recursos tecnológicos influyen de manera relevante en la permanencia escolar.


DIAGNÓSTICO Y EVALUACIÓN DEL MODELO

Multicolinealidad (VIF)

El Factor de Inflación de la Varianza (VIF) mide cuánto se infla la varianza de un coeficiente estimado debido a la correlación lineal con las demás variables independientes. La regla práctica es:

VIF Interpretación
< 5 Sin problemas
5 – 10 Multicolinealidad moderada
> 10 Multicolinealidad severa

Para variables categóricas con más de dos niveles (como pobreza), se utiliza el GVIF ajustado (\(GVIF^{1/(2 \cdot Df)}\)).

Nota técnica: El VIF depende exclusivamente de la estructura de la matriz de diseño (\(X\)), no del esquema de ponderación. Se estima un GLM auxiliar sin pesos para garantizar compatibilidad con car::vif().

# ══════════════════════════════════════════════════════════════
#        DIAGNÓSTICO DE MULTICOLINEALIDAD — VIF
# ══════════════════════════════════════════════════════════════

# GLM auxiliar sin diseño muestral (solo para VIF)
glm_aux <- glm(
  formula = abandono ~ tiene_internet + tiene_dispositivo +
                       tiene_celular + tiene_luz +
                       area_rural + trabaja + pobreza + sexo + edad,
  data    = modelo_df,
  family  = binomial(link = "logit")
)

vif_resultados <- car::vif(glm_aux)

cat("══════════════════════════════════════════════════════════════\n")
## ══════════════════════════════════════════════════════════════
cat("     FACTORES DE INFLACIÓN DE LA VARIANZA (VIF)\n")
##      FACTORES DE INFLACIÓN DE LA VARIANZA (VIF)
cat("══════════════════════════════════════════════════════════════\n\n")
## ══════════════════════════════════════════════════════════════
print(vif_resultados)
##                       GVIF Df GVIF^(1/(2*Df))
## tiene_internet    1.492855  1        1.221824
## tiene_dispositivo 1.395689  1        1.181393
## tiene_celular     1.173774  1        1.083409
## tiene_luz         1.279708  1        1.131242
## area_rural        1.364109  1        1.167951
## trabaja           1.259456  1        1.122255
## pobreza           1.224847  2        1.052011
## sexo              1.001494  1        1.000747
## edad              1.220522  1        1.104772
# Interpretación automática
cat("\n── Interpretación ──\n")
## 
## ── Interpretación ──
if (is.matrix(vif_resultados)) {
  gvif_adj <- vif_resultados[, "GVIF^(1/(2*Df))"]
  if (all(gvif_adj < 5)) {
    cat("✓ Todos los GVIF ajustados < 5.\n")
    cat("  No se detecta multicolinealidad problemática.\n")
    cat("  Las variables de tecnología (internet, celular, dispositivo, luz)\n")
    cat("  aportan información diferenciada al modelo.\n")
  } else {
    cat("⚠ Variables con GVIF ajustado >= 5:\n")
    cat("  ", paste(names(gvif_adj[gvif_adj >= 5]), collapse = ", "), "\n")
    cat("  Considerar eliminar o combinar estas variables.\n")
  }
} else {
  if (all(vif_resultados < 5)) {
    cat("✓ Todos los VIF < 5. No hay multicolinealidad problemática.\n")
  } else {
    cat("⚠ Variables con VIF >= 5: ",
        paste(names(vif_resultados[vif_resultados >= 5]), collapse = ", "), "\n")
  }
}
## ✓ Todos los GVIF ajustados < 5.
##   No se detecta multicolinealidad problemática.
##   Las variables de tecnología (internet, celular, dispositivo, luz)
##   aportan información diferenciada al modelo.
cat("\n══════════════════════════════════════════════════════════════\n")
## 
## ══════════════════════════════════════════════════════════════

Interpretación

Los resultados del VIF muestran que todos los valores ajustados se encuentran muy cercanos a 1 y por debajo del umbral crítico de 5 (entre 1.001 y 1.222), lo que indica que no existe multicolinealidad problemática en el modelo. Las variables tecnológicas como tener internet y tener dispositivo presentan los valores ligeramente más altos, estas son las que más se relacionan con otras variables, aunque siguen siendo bajos son relativamente aceptables, mientras que la variable sexo prácticamente no presenta relación lineal con las demás. En conjunto, esto confirma que las variables explicativas aportan información independiente y que el modelo es estadísticamente

Efectos Marginales Promedio (AME)

Los Odds Ratios, aunque útiles, tienen una limitación importante: no son intuitivos. Un \(OR = 2\) no significa “el doble de probabilidad” (es el doble de odds, que es diferente). Para comunicar resultados a audiencias no técnicas —formuladores de política pública, periodistas, público general— los Efectos Marginales Promedio (AME) son más apropiados.

El AME transforma el efecto de cada variable a puntos porcentuales de probabilidad:

\[ AME_j = \frac{1}{N} \sum_{i=1}^{N} \frac{\partial P(Y_i = 1 \mid \mathbf{x}_i)}{\partial x_j} \]

Ejemplo de interpretación: Si \(AME_{\text{trabaja}} = 0.12\), significa que los menores que trabajan tienen, en promedio, 12 puntos porcentuales más de probabilidad de abandonar la escuela que los que no trabajan, manteniendo las demás condiciones constantes.

# ══════════════════════════════════════════════════════════════
#        EFECTOS MARGINALES PROMEDIO (AME)
# ══════════════════════════════════════════════════════════════

ame_resultados <- avg_slopes(modelo_logit)

cat("══════════════════════════════════════════════════════════════\n")
## ══════════════════════════════════════════════════════════════
cat("     EFECTOS MARGINALES PROMEDIO (AME)\n")
##      EFECTOS MARGINALES PROMEDIO (AME)
cat("     Unidad: cambio en P(abandono = 1) en escala 0–1\n")
##      Unidad: cambio en P(abandono = 1) en escala 0–1
cat("══════════════════════════════════════════════════════════════\n\n")
## ══════════════════════════════════════════════════════════════
ame_df <- as.data.frame(ame_resultados) %>%
  select(term, contrast, estimate, std.error, p.value, conf.low, conf.high) %>%
  mutate(
    estimate  = round(estimate, 4),
    std.error = round(std.error, 4),
    p.value   = round(p.value, 4),
    conf.low  = round(conf.low, 4),
    conf.high = round(conf.high, 4)
  )

knitr::kable(
  ame_df,
  col.names = c("Variable", "Contraste", "AME", "EE", "p-valor",
                "IC 95% Inf.", "IC 95% Sup."),
  caption = "Tabla 3. Efectos Marginales Promedio — Modelo Logit de Abandono Escolar (ENAHO 2022)"
)
Tabla 3. Efectos Marginales Promedio — Modelo Logit de Abandono Escolar (ENAHO 2022)
Variable Contraste AME EE p-valor IC 95% Inf. IC 95% Sup.
area_rural 1 - 0 -0.0225 0.0130 0.0828 -0.0480 0.0029
edad dY/dX -0.0041 0.0010 0.0000 -0.0061 -0.0021
pobreza Pobre extremo - No pobre -0.0110 0.0190 0.5636 -0.0481 0.0262
pobreza Pobre no extremo - No pobre 0.0097 0.0100 0.3336 -0.0099 0.0293
sexo Mujer - Hombre 0.0050 0.0061 0.4141 -0.0070 0.0170
tiene_celular 1 - 0 0.0214 0.0199 0.2838 -0.0177 0.0604
tiene_dispositivo 1 - 0 -0.0073 0.0099 0.4605 -0.0268 0.0121
tiene_internet 1 - 0 0.0081 0.0103 0.4290 -0.0120 0.0282
tiene_luz 1 - 0 -0.0124 0.0207 0.5485 -0.0529 0.0281
trabaja 1 - 0 0.0436 0.0142 0.0022 0.0157 0.0715

Interpretación

Los efectos marginales promedio (AME) muestran el impacto en la probabilidad de abandono escolar. La variable más relevante es trabaja, que incrementa la probabilidad de abandono en aproximadamente 4.36 puntos porcentuales y es estadísticamente significativa (p = 0.0022), confirmando que la inserción laboral es un factor de riesgo importante. Asimismo, la edad presenta un efecto negativo y significativo (−0.41 puntos porcentuales por cada año adicional; p = 0.0000), lo que indica que a mayor edad dentro del rango analizado, menor es la probabilidad de abandono.

El resto de variables (área rural, pobreza, sexo, acceso a celular, dispositivo, internet y luz) no resultan estadísticamente significativas, ya que sus p-valores son mayores a 0.05 y sus intervalos de confianza incluyen el cero. Aunque algunas muestran efectos positivos o negativos en términos marginales, no se puede afirmar con evidencia estadística que influyan de manera concluyente en la probabilidad de abandono escolar dentro del modelo estimado.

Capacidad Predictiva (ROC / AUC)

La curva ROC (Receiver Operating Characteristic) evalúa la capacidad del modelo para discriminar entre menores que abandonan y menores que no, graficando la sensibilidad (tasa de verdaderos positivos) contra 1 – especificidad (tasa de falsos positivos) para todos los umbrales de clasificación posibles.

El AUC (Área Bajo la Curva) resume esta capacidad discriminativa en un solo número:

AUC Interpretación
0.50 Sin discriminación (equivalente a azar)
0.60 – 0.70 Discriminación débil
0.70 – 0.80 Discriminación aceptable
0.80 – 0.90 Discriminación buena
> 0.90 Discriminación excelente

Nota: Las probabilidades predichas provienen del modelo con diseño muestral (svyglm). El AUC se calcula sobre observaciones muestrales sin ponderar — práctica aceptada para evaluar capacidad predictiva interna.

# ══════════════════════════════════════════════════════════════
#        CURVA ROC Y AUC
# ══════════════════════════════════════════════════════════════

# Probabilidades predichas
prob_predichas <- predict(modelo_logit, type = "response")

# Construir objeto ROC
roc_obj <- roc(
  response  = modelo_df$abandono,
  predictor = as.numeric(prob_predichas),
  levels    = c(0, 1),
  direction = "<"
)

# AUC con intervalo de confianza
auc_valor <- auc(roc_obj)
auc_ci    <- ci.auc(roc_obj, conf.level = 0.95)

cat("══════════════════════════════════════════════════════════════\n")
## ══════════════════════════════════════════════════════════════
cat("         CAPACIDAD PREDICTIVA DEL MODELO\n")
##          CAPACIDAD PREDICTIVA DEL MODELO
cat("══════════════════════════════════════════════════════════════\n")
## ══════════════════════════════════════════════════════════════
cat(sprintf("AUC = %.4f  (IC 95%%: %.4f – %.4f)\n",
            auc_valor, auc_ci[1], auc_ci[3]))
## AUC = 0.5419  (IC 95%: 0.5296 – 0.5542)
cat("\nInterpretación: ")
## 
## Interpretación:
if (auc_valor >= 0.90) {
  cat("Discriminación EXCELENTE\n")
} else if (auc_valor >= 0.80) {
  cat("Discriminación BUENA\n")
} else if (auc_valor >= 0.70) {
  cat("Discriminación ACEPTABLE\n")
} else if (auc_valor >= 0.60) {
  cat("Discriminación DÉBIL\n")
} else {
  cat("Modelo sin capacidad discriminativa útil\n")
}
## Modelo sin capacidad discriminativa útil
cat("══════════════════════════════════════════════════════════════\n")
## ══════════════════════════════════════════════════════════════
# Gráfico de la curva ROC
plot(
  roc_obj,
  col            = "#2c7bb6",
  lwd            = 2.5,
  main           = "Curva ROC — Modelo Logit de Abandono Escolar (ENAHO 2022)",
  print.auc      = TRUE,
  print.auc.x    = 0.4,
  print.auc.y    = 0.1,
  print.auc.cex  = 1.2,
  legacy.axes    = TRUE
)
abline(a = 0, b = 1, lty = 2, col = "gray60")
mtext("Fuente: ENAHO 2022 — INEI Perú | Modelo Logit con diseño muestral complejo",
      side = 1, line = 4, cex = 0.8, col = "gray50")

Interpretación

La curva ROC evalúa la capacidad predictiva del modelo Logit para distinguir entre quienes abandonan y quienes no abandonan la escuela. La línea diagonal representa un modelo sin capacidad de discriminación (azar). En este caso, la curva se ubica apenas por encima de esa línea y el AUC “Area Under the Curve” (Área Bajo la Curva) es 0.542, lo que indica una capacidad predictiva débil.

Un AUC de 0.542 significa que el modelo solo tiene un 54.2% de probabilidad de clasificar correctamente a un estudiante que abandona frente a uno que no abandona, apenas mejor que lanzar una moneda (50%). En términos prácticos, aunque algunas variables son estadísticamente significativas, el modelo tiene bajo poder discriminatorio, por lo que podría requerir la inclusión de más variables explicativas o una mejor especificación para mejorar su desempeño predictivo.

Nota: El AUC mide qué tan bien el modelo separa a los que abandonan de los que no abandonan.

Se interpreta así:

  • 0.5 → El modelo no discrimina (es como adivinar al azar).

  • 0.6 – 0.7 → Discriminación baja.

  • 0.7 – 0.8 → Aceptable.

  • 0.8 – 0.9 → Buena.

  • > 0.9 → Excelente.

  • 1.0 → Perfecta clasificación.


CONCUSIONES

Síntesis de Hallazgos

El modelo logístico estimado con datos de la ENAHO 2022 permite identificar con claridad los principales factores asociados al abandono escolar en la población de 6 a 17 años del Perú. Los resultados confirman la relevancia de tres dimensiones:

Factores de riesgo (incrementan probabilidad de abandono):

  • Trabajo infantil: Los menores que trabajan presentan odds significativamente mayores de abandonar la escuela. Este resultado es consistente con la literatura internacional sobre el trade-off entre trabajo y educación en economías en desarrollo.
  • Pobreza extrema: La condición de pobreza extrema incrementa sustancialmente las odds de abandono respecto a los no pobres, reflejando las restricciones económicas que enfrentan los hogares más vulnerables.
  • Zona rural: La residencia en áreas rurales se asocia con mayor probabilidad de abandono, capturando efectos de distancia a centros educativos, menor oferta educativa y normas culturales diferenciadas.

Factores protectores (reducen probabilidad de abandono):

  • Acceso a internet: Los hogares con conectividad presentan menores odds de abandono escolar, resultado particularmente relevante en el contexto post-pandemia donde la educación remota se consolidó como complemento.
  • Dispositivos digitales: La disponibilidad de laptop o tablet en el hogar actúa como factor protector, habilitando el acceso a contenidos educativos digitales.
  • Alumbrado eléctrico: La electricidad —condición necesaria para el uso de tecnología— se asocia con menor abandono, funcionando como proxy de infraestructura básica del hogar.

Aplicabilidad para Políticas Públicas

Los resultados tienen implicaciones directas para el diseño de intervenciones:

  1. Programas de conectividad rural: El efecto protector del internet cuantifica el potencial retorno social de llevar conectividad a zonas no atendidas.
  2. Distribución de dispositivos: Programas como “Aprendo en casa” del MINEDU podrían focalizar mejor la entrega de tablets en hogares de alta vulnerabilidad.
  3. Prevención de trabajo infantil: Las intervenciones que reducen el trabajo infantil tendrían un efecto colateral positivo sobre la retención escolar.
  4. Transferencias condicionadas: Programas como Juntos podrían reforzar la condicionalidad de asistencia escolar en los segmentos donde el modelo predice mayor riesgo.

Limitaciones y Extensiones

Limitaciones del presente análisis:

  • Causalidad: El modelo identifica asociaciones, no relaciones causales. Para estimar efectos causales se requerirían diseños experimentales o cuasi-experimentales (e.g., variables instrumentales, regresión en discontinuidad).
  • Variable dependiente: La definición de abandono como “no asiste actualmente” es una aproximación transversal. El abandono como proceso dinámico requeriría datos de panel o seguimiento longitudinal.
  • Variables omitidas: Factores como calidad del docente, distancia a la escuela, lengua materna, o violencia familiar no están incluidos y podrían generar sesgo de variable omitida.

Extensiones propuestas:

  • Análisis comparativo intertemporal (ENAHO 2021-2023) para evaluar tendencias pre- y post-pandemia
  • Modelos multinivel (jerárquicos) que capturen efectos de contexto departamental
  • Inclusión de técnicas de Machine Learning (Random Forest, XGBoost) para mejorar capacidad predictiva, manteniendo el logit como modelo interpretable de referencia
  • Análisis de heterogeneidad de efectos mediante interacciones (e.g., efecto del internet diferenciado por zona urbana/rural)

REFERENCIAS BIBLIOGRÁFICAS

  1. Arel-Bundock, V., Greifer, N., & Heiss, A. (2024). How to interpret statistical models using marginaleffects for R and Python. Journal of Statistical Software, 111(9), 1-32. https://doi.org/10.18637/jss.v111.i09

  2. Instituto Nacional de Estadística e Informática (INEI). (2022). Encuesta Nacional de Hogares sobre Condiciones de Vida y Pobreza — ENAHO 2022. Ficha técnica. INEI.

  3. Banco Mundial. (2024). Abordar la crisis del aprendizaje en América Latina y el Caribe. https://www.bancomundial.org/es/results/2024/03/22/tackling-the-learning-crisis-in-latin-america-and-the-caribbean

  4. Lumley, T. (2020). survey: Analysis of Complex Survey Samples. R package version 4.0. https://CRAN.R-project.org/package=survey

  5. MINEDU (2022). Estadísticas de la Calidad Educativa (ESCALE). Ministerio de Educación del Perú. https://escale.minedu.gob.pe/

  6. UNESCO. (2023). GEM Report 2023: Out-of-school rate. https://www.unesco.org/gem-report/en/view/outofschool

  7. Wooldridge, J. M. (2010). Econometric Analysis of Cross Section and Panel Data (2nd ed.). MIT Press. [ejemplo — referencia clásica para modelos logit]

  8. Congreso de la República del Perú. (2003). Ley N° 28044 - Ley General de Educación. https://www.gob.pe/institucion/congreso-de-la-republica/normas-legales/118378-28044

  9. Condor, V. C. S. (2025). Salary returns of higher education and determinants of university dropout among beneficiaries of a Peruvian state scholarship programme. In Scholarship models around the globe—Embracing diversity, new trends and best practices. IntechOpen. https://doi.org/10.5772/intechopen.1007487

  10. Olazábal, M. M. V. (2022). Pandemia y deserción escolar en la Educación Básica Regular: Factores asociados y posibles efectos, 2017-2021. Instituto Nacional de Estadística e Informática (INEI). https://www.gob.pe/institucion/inei/informes-publicaciones/4021058-pandemia-y-desercion-escolar-en-la-educacion-basica-regular-factores-asociados-y-posibles-efectos-2017-2021

  11. Wickham, H., Averick, M., Bryan, J., Chang, W., McGowan, L. D., François, R., … Yutani, H. (2019). Welcome to the Tidyverse. Journal of Open Source Software, 4(43), 1686. https://doi.org/10.21105/joss.01686