Procesamiento de Datos Faltantes

Objetivos de la clase

  • Entender por qué los datos faltantes importan.
  • Diferenciar MCAR, MAR y MNAR.
  • Ver cómo cambian sesgo, varianza y distribución.
  • Comparar estrategias:
    • dropna
    • imputación por media
    • KNN / imputación basada en modelo
  • Revisar aplicaciones en BigMart.

Introducción

Idea central

No basta con saber cuántos datos faltan.
Hay que pensar por qué faltan.

Porque el mecanismo de ausencia determina:

  • si nuestras estimaciones son sesgadas
  • si la imputación es válida
  • si el modelo aprende de una muestra representativa

Motivación

Los datos faltantes pueden producir:

  • pérdida de potencia estadística
  • sesgo en los estimadores
  • errores estándar incorrectos
  • intervalos de confianza engañosos
  • peor desempeño predictivo

Ejemplo visual:

Pérdida más probable en valores altos

Media verdadera: 12.043, promedio verdadero: 12.043
Media observada: 11.119, promedio observado: 11.119
Proporción missing: 28.650%

Preguntas guía

Antes de emplear cualquier técnica, conviene preguntar:

  1. ¿Cuál es el porcentaje de faltantes?
  2. ¿Cuál es el patrón de ausencia?
  3. ¿Cual es el mecanismo de ausencia?
  4. ¿Modelamos una variable objetivo o un predictor?1

1 Un modelo puede aprender con predictores imperfectos, pero no puede aprender sin conocer la respuesta correcta.


Tipos estructurales de datos faltantes

Unit nonresponse

Falta toda la observación

X1 X2 Y
? ? ?

Ejemplo:
una persona no responde ninguna parte de una encuesta.

Item nonresponse

Faltan solo algunas variables

X1 X2 Y
?

Ejemplo:
un registro sí existe, pero una de sus variables no fue capturada.


Mecanismos de ausencia

MCAR — Missing Completely At Random

La probabilidad de missing no depende de ninguna variable.

\[ f(R \mid Y, X, \theta) = f(R \mid \theta) \]

Se puede entender como que “Se perdieron filas al azar.”

Ejemplo: falla aleatoria en el sistema de captura de datos.


Ejemplo sintético: MCAR en acción

Proporción missing: 20.57%
Media verdadera:    12.0425
Media observada:    12.0411
Desv. estándar verdadera: 2.1935
Desv. estándar observada: 2.1811

Interpretación

  • la ausencia es independiente de los datos observados
  • también es independiente de los datos no observados
  • es el caso más simple desde el punto de vista estadístico

Consecuencia práctica

Si ignoramos los faltantes bajo MCAR:

  • no necesariamente introducimos sesgo
  • pero sí perdemos información y potencia estadística

MAR — Missing At Random

La probabilidad de missing depende solo de variables observadas.

\[ f(R \mid Y, X, \theta) = f(R \mid Y_{obs}, X, \theta) \]

Se entiende como “Faltan más datos en ciertos grupos observables.”

Ejemplo: Item_Weight falta más en ciertos Outlet_Type que sí conocemos.


Ejemplo sintético: MAR en acción

Proporción missing por grupo:
     Outlet_Type  missing
0  Grocery Store    0.763
1    Mini Market    0.173
2    Supermarket    0.031

Media verdadera: 12.177 Media observada: 13.693

Efecto de MAR sobre la muestra observada


Interpretación

  • la ausencia puede explicarse con variables que sí vemos
  • condicionado en lo observado, el missing ya no depende del valor faltante
  • es el supuesto más común en análisis aplicados

Consecuencia práctica

Si ignoramos los faltantes bajo MAR:

  • podemos introducir sesgo
  • pero una imputación que use variables observadas puede corregirlo parcialmente o bien

MNAR — Missing Not At Random

La probabilidad de missing depende del propio valor faltante.

\[ f(R \mid Y, X, \theta) = f(R \mid Y_{obs}, Y_{mis}, X, \theta) \]

Es decit “Los valores faltan precisamente por su valor.”

Ejemplo: Item_Weight falta más en productos muy pesados, justamente por su peso.


Ejemplo sintético: MNAR en acción

Media verdadera: 12.012
Media observada: 10.716
Proporción missing: 62.44%

Interpretación

  • el mecanismo de ausencia depende de información no observada
  • el dato faltante es parte de la causa de su propia ausencia
  • es el caso más difícil de manejar

Consecuencia práctica

Si ignoramos los faltantes bajo MNAR:

  • aparece sesgo estructural
  • ni una buena imputación estándar garantiza corregir completamente el problema

Estrategias para manejar datos faltantes


De la teoría a la práctica

Una vez que entendemos cómo y por qué aparecen los datos faltantes,
la siguiente pregunta natural es:

¿Qué estrategias existen para tratarlos?

No todas las técnicas son igual de adecuadas:
su validez depende del mecanismo de ausencia,
de la cantidad de missing values
y del papel que juega la variable en el análisis.


Estrategias prácticas

  • Casos completos
    eliminar observaciones incompletas; simple, pero pierde información.

  • Imputación simple
    media, mediana o moda; rápida, pero subestima varianza.

  • Imputación múltiple
    genera varias imputaciones y combina resultados; incorpora incertidumbre.

  • Modelos de regresión / KNN
    usan variables observadas para imputar; útiles especialmente bajo MAR.


Imputación simple

Consiste en reemplazar valores faltantes por un valor representativo de la variable.

Es decir , si no conocemos un valor, podemos sustituirlo por una estimación simple calculada a partir de los datos observados.

  • media
  • mediana
  • moda
  • constante

Imputación por media

Sea una variable \(Y\) con valores faltantes, la imputación por media reemplaza:

\[ Y_{mis} \leftarrow \bar{Y}_{obs} \]

donde

\[ \bar{Y}_{obs} = \frac{1}{n_{obs}} \sum_{i=1}^{n_{obs}} Y_i \]


Ejemplo sintético: imputación simple


Consecuencia estadística

La imputación simple suele:

  • preservar parcialmente la tendencia central
  • reducir artificialmente la varianza
  • introducir una acumulación artificial en el valor imputado, porque muchos faltantes se reemplazan por el mismo número

Imputación múltiple

En lugar de crear un solo dataset imputado, generamos varias versiones plausibles. Esto poque cada valor faltante puede tener varias estimaciones posibles.

La imputación múltiple:

  1. genera m datasets imputados
  2. ajusta el modelo en cada uno
  3. combina los resultados

Formulación matemática

Sea \(q_i\) la estimación del parámetro en el dataset imputado \(i\). la estimación final y su varianza:

\[ \bar{q} = \frac{1}{m} \sum_{i=1}^{m} q_i \qquad T = \bar{U} + \left(1 + \frac{1}{m}\right) B \]

donde

  • \(\bar{U}\) = varianza promedio dentro de imputaciones
  • \(B\) = varianza entre imputaciones

Ejemplo sintético: imputación múltiple


Ventajas

  • incorpora la incertidumbre del valor faltante
  • preserva mejor la variabilidad que la imputación simple
  • permite obtener inferencias más rigurosas

Desventajas

  • es más costosa computacionalmente
  • requiere varios datasets imputados
  • depende de supuestos de modelado, típicamente cercanos a MAR

Imputación con KNN / modelos

En lugar de usar un único valor global, estimamos los faltantes usando información de observaciones similares.

Es decir, si un valor falta, buscamos observaciones parecidas en otras variables y usamos sus valores para estimarlo.

Ejemplo:

  • productos con precio, categoría y tienda similares
  • probablemente tendrán peso similar

Formulación matemática (KNN)

Para una observación con valor faltante \(x_i\):

  1. se identifican los \(k\) vecinos más cercanos
  2. se estima el valor faltante usando sus valores

\[ \hat{x}_i = \frac{1}{k}\sum_{j \in N_k(i)} x_j \]

donde \(N_k(i)\) son los k vecinos más cercanos.


Ejemplo sintético: imputación con KNN


Ventajas

  • preserva mejor la estructura de los datos
  • utiliza relaciones entre variables
  • suele funcionar bien bajo MAR

Desventajas

  • depende de la métrica de distancia
  • puede ser costoso computacionalmente en datasets grandes
  • su desempeño disminuye si hay muchos valores faltantes


Recomendaciones para práctica profesional

  • Visualiza siempre el patrón de faltantes.
  • No uses imputación por media como solución automática.
  • Piensa si la ausencia puede ser informativa.
  • Si asumes MAR, incluye buenas variables auxiliares.
  • Haz análisis de sensibilidad cuando el riesgo de MNAR sea alto.

Mini ejercicio en vivo

Pregunta: si un patrón de missing cambia por Region, ¿qué mecanismo parece más plausible?

Region Promo missing
0 Centro 0 0.171785
1 Centro 1 0.198907
2 Norte 0 0.091124
3 Norte 1 0.075691
4 Sur 0 0.338710
5 Sur 1 0.320567

Para discutir

  • ¿Se parece a MCAR?
  • ¿Qué variables usarías para imputar?
  • ¿dropna sería aceptable aquí?

Cierre

Manejar datos faltantes no es una tarea de limpieza menor.
Es una decisión estadística que afecta inferencia, predicción y credibilidad.

Próximo paso sugerido

Tomar un dataset real como BigMart y comparar cómo cambian las predicciones de ventas bajo distintas imputaciones.


Conclusiones

Los datos faltantes son inevitables en proyectos reales, pero su manejo inadecuado puede invalidar cualquier análisis posterior. Los puntos clave de este notebook son:

1. El mecanismo importa más que el porcentaje. Un 5% de MNAR puede causar más daño que un 25% de MCAR.

2. Siempre diagnostica antes de imputar. Visualiza si el missingness está asociado con otras variables. Un heatmap y un boxplot por grupo son el primer paso obligatorio.

3. La imputación por media es simple pero costosa. Contrae la varianza y sesga los estimadores cuando el mecanismo no es MCAR. Úsala solo como línea base.

4. La imputación estocástica preserva la distribución. Si la variable imputada será usada como predictor o se analizará su variabilidad, añadir ruido proporcional al MSE del modelo de imputación es esencial.

5. La variable indicadora de missingness es gratuita y poderosa. Siempre créala. Si el mecanismo es MNAR, puede ser el predictor más informativo que tienes.

6. Usa pipelines para evitar data leakage. El imputador debe ajustarse solo sobre el conjunto de entrenamiento y transformar el de prueba. sklearn.pipeline.Pipeline garantiza esto automáticamente.


Basado en: Protopapas, Rader & Tanner — CS109A Introduction to Data Science, Lecture 19: Dealing with Missing Data.