🧩 Trabajando con Valores Faltantes

Todo lo que necesitas saber para identificar, analizar y reemplazar valores faltantes en pandas.

  • Evalúa su impacto: ¿qué porcentaje del dataset representan? Si es poco (5–10%), podrías eliminarlos.

  • Revisa por columna con isnull() y count().

  • Identifica el tipo de variable:

En análisis de datos, los valores faltantes son inevitables, pero manejarlos correctamente marca la diferencia entre un modelo confiable y uno engañoso.

🔍 NaN y None: Indicadores explícitos de valores faltantes

En pandas, los valores NaN y None indican que no hay dato en una celda.

  • NaN (Not a Number) es de tipo float, por lo que puedes realizar operaciones matemáticas con él.

  • None es de tipo NoneType, y no admite operaciones matemáticas.

👉 Cuidado: los valores NaN pueden distorsionar los resultados al agrupar datos. No elimines filas sin más: muchas veces esos valores pueden recuperarse.

🧠 Métodos clave en pandas

  • value_counts(): devuelve los valores únicos y su frecuencia.

  • isnull(): devuelve una lista booleana donde True indica un valor faltante.

  • fillna(valor): sustituye los valores faltantes por uno definido.

🧾 Cuándo llenar valores faltantes (y cuándo no)

No existen reglas absolutas. El contexto siempre importa. Algunos consejos prácticos:

  • ❌ Nunca rellenes la variable principal de tu análisis ni uses esa variable para rellenar otras.

  • 📝 Documenta cuándo, dónde, por qué y cómo llenas los valores faltantes.

  • ⚖️ Asegúrate de que el relleno no afecte significativamente tus resultados.

  • 🧪 Si dudas, haz un análisis de sensibilidad: corre el análisis con y sin valores rellenados, y compara resultados.

Recuerda: “No permitiré que los valores rellenados cambien drásticamente los resultados de mi análisis.” 💪

🔧 Cómo tratar los valores faltantes paso a paso

  1. Informa el problema y verifica si puedes obtener los datos completos.

  2. Cuantifica los valores faltantes con value_counts().

print(df['columna'].value_counts()) 
print(df[df['columna'].isnull()].count())
df['columna'].fillna(df['columna'].median(), inplace=True)

🗑️ Cómo eliminar registros con valores faltantes

Usa:

df.dropna(inplace=True)
df.reset_index(drop=True, inplace=True) 

💡 Conclusión: Los valores faltantes no son solo “huecos” en tus datos; son una oportunidad para entender mejor el contexto y la calidad de la información. Un buen analista no elimina, interpreta.

Reply

or to participate.