Data Cleansing
Depuración de nivel superior

Depuración de datos
Data Cleansing es el proceso de limpiar, validar, corregir, enriquecer y estandarizar datos para asegurar que sean precisos, completos, coherentes y útiles para el análisis y la toma de decisiones.
Pasos del Data Cleansing (Más Allá del Data Cleaning)
1️⃣ Análisis de la Calidad de los Datos
Antes de limpiar los datos, se debe evaluar su estado. Algunos criterios clave incluyen:
Completitud: ¿Faltan datos en algunas columnas o registros?
Coherencia: ¿Los datos tienen valores contradictorios?
Exactitud: ¿Los datos reflejan la realidad?
Validez: ¿Cumplen con reglas de negocio predefinidas?
Uniformidad: ¿Los formatos son consistentes?
Ejemplo: Si una empresa tiene datos de clientes en diferentes bases, puede haber inconsistencias en nombres o direcciones.
2️⃣ Estandarización de Datos
Para que los datos sean comparables y útiles, deben seguir un estándar. Esto implica:
🔹 Normalización de fechas (Ej: "12/03/24" → "2024-03-12").
🔹 Formatos de texto uniformes (Ej: "CDMX" vs. "Ciudad de México").
🔹 Homogeneización de nombres y categorías (Ej: "México" y "MX" deben referirse a lo mismo).
Ejemplo en SQL para estandarizar nombres de ciudades:
sql
CopiarEditarUPDATE clientes
SET ciudad = 'Ciudad de México'
WHERE ciudad IN ('CDMX', 'Mexico City', 'D.F.');
3️⃣ Validación de Datos
Aquí se aplican reglas de negocio para asegurarse de que los datos sean correctos.
Métodos de validación:
Reglas predefinidas (Ej: un número de teléfono debe tener 10 dígitos).
Cruce con fuentes confiables (Ej: validar direcciones con bases de datos oficiales).
Pruebas de integridad (Ej: verificar que las relaciones entre tablas sean correctas).
Ejemplo en Python para validar correos electrónicos:
pythonCopiarEditarimport re
def validar_email(email):
patron = r'^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$'
return bool(re.match(patron, email))
email_test = "usuario@empresa.com"
print(validar_email(email_test)) # Devuelve True si es válido
4️⃣ Enriquecimiento de Datos
Consiste en complementar los datos con información adicional para mejorar su valor.
🔹 Ejemplo:
Agregar coordenadas geográficas a una base de direcciones.
Incorporar datos demográficos a registros de clientes.
Integrar datos externos, como precios de mercado o tasas de cambio.
Ejemplo en Power BI:
Se pueden conectar fuentes como APIs o bases de datos externas para enriquecer los datos.
5️⃣ Eliminación y Fusión de Datos Duplicados
Cuando una empresa tiene múltiples fuentes de datos, es común encontrar registros repetidos o similares. Se debe:
Identificar duplicados basados en criterios clave (Ej: ID, nombre, fecha).
Decidir si consolidar o eliminar registros.
Aplicar reglas para la fusión de datos (Ej: tomar el dato más reciente o más completo).
Ejemplo en Power Query (Power BI) para eliminar duplicados:
Selecciona la columna clave.
Ve a Inicio > Quitar Duplicados.
Aplica reglas de combinación si es necesario.
Ejemplo en Python:
df = df.drop_duplicates(subset=['ID_Cliente'], keep='last')
6️⃣ Integración y Consolidación de Datos
Si los datos provienen de distintas fuentes, deben integrarse correctamente.
Ejemplo de integración en SQL (Unir tablas de clientes y pedidos):
sql
CopiarEditarSELECT clientes.nombre, pedidos.total
FROM clientes
JOIN pedidos ON clientes.id_cliente = pedidos.id_cliente;
Ejemplo en Power BI:
Crear relaciones entre tablas usando claves primarias y foráneas.
Usar la función
MERGE
en Power Query para combinar datasets.
7️⃣ Auditoría y Monitoreo de Calidad de Datos
Para evitar que los problemas se repitan, se deben implementar controles de calidad:
Dashboards de calidad de datos en Power BI.Automatización de validaciones con Python o SQL scripts programados.
Reglas de negocio en bases de datos (Constraints, Triggers).
Ejemplo en SQL para monitorear datos faltantes:
sql
CopiarEditarSELECT columna, COUNT(*) AS cantidad_nulos
FROM tabla
WHERE columna IS NULL
GROUP BY columna;
Ejemplo en Power BI para medir calidad de datos:
Crear una medida DAX para contar valores nulos:
DAXCopiarEditarValoresNulos = COUNTROWS(FILTER(Tabla, Tabla[Columna] = BLANK()))
Mostrarlo en un gráfico de barras para identificar campos problemáticos.
Data cleaning y Data cleansing
Existen similitudes pero también diferencias:
1. Data cleaning y data cleansing es lo mismo
Algunos autores sostienen que el data cleaning y el data cleasing son la misma cosa. Es de este enfoque que:
El data cleansing y el data cleaning son esencialmente lo mismo. Ambos términos se refieren al proceso de identificar y corregir o eliminar errores, inconsistencias y datos inexactos en un conjunto de datos.
2. Data cleansing es más que el data cleaning
Algunos especialistas sostienen que el data cleansing va más allá del data cleaning, y esta afirmación tiene fundamento en las diferencias entre ambos conceptos. Aunque los términos son usados de manera intercambiable, tienen matices que los distinguen en el contexto de la gestión de datos.
Diferencias entre Data Cleansing y Data Cleaning
Definicion:
Data cleansing: Proceso integral que no solo corrige errores, sino que identifica y aborda las causas raíz para prevenir futuros problemas.
Data cleaning: Proceso básico para corregir errores evidentes como duplicados, valores faltantes o mal formateados.
Enfoque:
Data cleansing: Más profundo, incluye validación, enriquecimiento y análisis de patrones problemáticos. Incluye ademas automaticaciones, estandarizaciones y control de impactos.
Data cleaning: Centrado en la corrección directa de errores visibles.
Prevención:
Data cleaning: Busca evitar que los problemas se repitan mediante ajustes en procesos o sistemas.
Data cleaning: No aborda las causas raíz; se limita a limpiar los datos existentes.
Intervención manual:
Data cleansing: Requiere colaboración con expertos del dominio para validar y enriquecer los datos.
Data cleaning: Generalmente automatizado, con poca intervención manual. Modificaciones menores.
Resultado esperado:
Data cleasing: Datos confiables, enriquecidos y listos para análisis estratégico.
Data cleaning: Datos limpios y utilizables en el corto plazo.
Características del Data Cleansing
Investigación de causas raíz:
Identifica por qué ocurren errores recurrentes (ej., problemas en formularios de entrada o capacitación insuficiente).
Ejemplo: Si los clientes ingresan direcciones incorrectas, el cleansing puede analizar el diseño del formulario para evitar confusiones.Validación de datos:
Verifica que los datos sean precisos, completos y consistentes según reglas definidas.
Ejemplo: Validar que los códigos postales coincidan con las ciudades registradas.Enriquecimiento de datos:
Agrega información relevante para mejorar la calidad del dataset (ej., incluir datos demográficos basados en ubicaciones).Creación de una fuente única de verdad (Single Source of Truth):
Garantiza que todos los sistemas trabajen con un conjunto único y confiable de datos.
Características del Data Cleaning
Corrección básica de errores:
Elimina duplicados, completa valores faltantes y corrige formatos inconsistentes.
Ejemplo: Cambiar "John Smith" a "John A. Smith" si falta el segundo nombre.Automatización:
Herramientas como scripts o software automatizan la limpieza básica (ej., deduplicación).Uso temporal:
Los datos se limpian para ser utilizados en tareas específicas, pero no necesariamente se enriquecen o validan profundamente.
Ejemplo práctico
Imagina una base de datos con registros de clientes:
En el proceso de data cleaning, se eliminan duplicados, se corrigen errores tipográficos y se completan valores faltantes.
En el proceso de data cleansing, además de realizar lo anterior:
Se analiza por qué hay duplicados recurrentes (problemas en sistemas CRM).
Se valida que las direcciones sean reales cruzándolas con bases externas.
Se agregan datos demográficos para enriquecer la base.
Data Cleansing es más que solo limpiar datos
Es un proceso estructurado que involucra análisis, validación, estandarización, enriquecimiento y monitoreo.
Va más allá del Data Cleaning, ya que busca mejorar la calidad, coherencia y utilidad de los datos.
Requiere herramientas avanzadas como Power Query, SQL, Python, herramientas ETL y Data Governance.
Conclusión
El data cleansing es un proceso más amplio y profundo que el data cleaning, ya que no solo limpia los datos sino que investiga las causas raíz de los problemas, valida su precisión y los enriquece para garantizar su confiabilidad a largo plazo. Ambos procesos son esenciales en la gestión de datos, pero el data cleansing es más estratégico y orientado a prevenir futuros errores mientras mejora la calidad integral del dataset.