Ejercicio 44: Limpieza y Manejo de Datos Faltantes, Duplicados y Variables Categóricas

Este ejercicio tiene como objetivo que los estudiantes practiquen técnicas esenciales de limpieza de datos en Pandas, incluyendo el manejo de valores faltantes, duplicados y variables categóricas. Se trabajará con el dataset “Titanic” (sns.load_dataset(’titanic’)), un conjunto de datos realista que presenta valores nulos, duplicados y variables categóricas que requieren tratamiento especial.

Objetivos

  • Identificar y manejar valores faltantes (NaN).
  • Detectar y corregir valores duplicados o inconsistentes.
  • Trabajar con variables categóricas y convertirlas en formatos adecuados.
  • Identificar valores atípicos y analizarlos.

Parte A: Carga y Exploración del Dataset

El dataset Titanic contiene información sobre pasajeros, con variables como:

  • survived: Indica si el pasajero sobrevivió (0 = No, 1 = Sí).
  • pclass: Clase del boleto (1ª, 2ª o 3ª).
  • sex: Género del pasajero.
  • age: Edad del pasajero.
  • sibsp: Número de hermanos/esposos a bordo.
  • parch: Número de padres/hijos a bordo.
  • fare: Tarifa pagada por el boleto.
  • embarked: Puerto donde abordó el barco (C = Cherbourg, Q = Queenstown, S = Southampton).

Tareas

  1. Cargar el dataset y mostrar sus primeras filas.
  2. Identificar cuántos valores faltantes hay en cada columna.
  3. Analizar el tipo de variables y su utilidad en el análisis.

Pregunta de reflexión: ¿Cómo afecta la presencia de valores faltantes en un análisis de datos?

import seaborn as sns
import pandas as pd

# Cargar el dataset
titanic = sns.load_dataset('titanic')

# Mostrar las primeras filas
print(titanic.head())

# TODO: Implementar

Parte B: Manejo de Valores Faltantes

Se aplicarán distintas estrategias para tratar valores nulos en el dataset.

Tareas

  1. Contar y visualizar valores faltantes en cada columna.
  2. Imputación de valores faltantes en age.
  3. Imputación de valores faltantes en embarked.
  4. Imputación de valores faltantes en fare.

Pregunta de reflexión: ¿Cómo elegir la mejor estrategia para imputar valores faltantes?

# TODO: Implementar

Parte C: Detección y Manejo de Duplicados

Se identificarán y manejarán registros duplicados o inconsistentes.

Tareas

  1. Contar y eliminar filas duplicadas exactas.
  2. Detectar posibles duplicados basados en nombre y clase (pclass).
  3. Normalización de nombres.

Pregunta de reflexión: ¿Cómo se decide si un registro es un duplicado real o un dato válido?

# TODO: Implementar

Parte D: Manejo de Variables Categóricas

Se trabajará con variables categóricas para prepararlas para análisis y modelos.

Tareas

  1. Convertir sex en valores numéricos (0 = Male, 1 = Female).
  2. Convertir embarked en variables dummy (pd.get_dummies).
  3. Convertir pclass a tipo categórico para mejorar la eficiencia.

Pregunta de reflexión: ¿Por qué es importante transformar variables categóricas antes de usarlas en modelos?

# TODO: Implementar

Parte E: Identificación de Valores Atípicos

Se analizarán valores atípicos para evaluar su impacto en el dataset.

Tareas

  1. Identificar outliers en fare usando boxplots.
  2. Aplicar z-score o IQR para detectar valores extremos.
  3. Analizar la relación entre valores atípicos y la supervivencia (survived).

Pregunta de reflexión: ¿Cuándo es apropiado eliminar un outlier y cuándo mantenerlo?

# TODO: Implementar

Entrega esperada

  • Código limpio con detección y manejo de valores faltantes.
  • Eliminación o corrección de datos duplicados e inconsistentes.
  • Transformación de variables categóricas.
  • Identificación de valores atípicos y análisis de su impacto.
  • Reflexiones sobre la importancia de la limpieza de datos.