Preparación y Calidad de Datos · Análisis de Datos

Deduplicación y normalización de texto

Detectar y fusionar registros duplicados, y normalizar campos de texto para que la misma realidad se represente de forma única y comparable.

Deduplicación y normalización de texto

Ilustracion de calidad de datos: tabla con valores faltantes siendo limpiada en un pipeline.
Preparacion y calidad de datos: faltantes, atipicos, codificacion y pipelines.

Mapa conceptual

Una realidad, muchas escrituras Los datos sucios no solo tienen errores: tienen las mismas cosas escritas de muchas maneras. Un análisis que cuenta «Madrid», «madrid» y «MADRID» como tres ciudades distintas miente con precisión.

Por qué se duplican los registros

Sistemas distintos que no se hablan, capturas manuales, fusiones de bases de datos, clientes que reintentan un pedido. Los duplicados rara vez son copias exactas: son versiones divergentes de la misma entidad, y por eso no se detectan con una simple comparación de campos.

Normalizar antes de comparar

Antes de buscar coincidencias conviene canónizar el texto: quitar acentos, pasar a minúsculas, colapsar espacios, eliminar puntuación irrelevante. Muchas «diferencias» desaparecen al normalizar, y las que quedan son de verdad distintas.

Normalización de formato

Fechas, teléfonos, códigos postales y unidades admiten mil formatos para el mismo valor. Convertir cada campo a un formato canónico (fecha ISO, número sin separadores, unidad estándar) hace que la comparación sea posible y que los grupos se unifiquen.

Limpieza de cadena básica

Duplicado exacto frente a aproximado

Los duplicados exactos se resuelven con hashing o agrupación. Los casi-duplicados —mismo cliente, dirección con una falta— exigen semejanza difusa. La mayoría del problema real está en este segundo grupo, donde no hay clave que iguale.

Medir similitud de texto

Distancias de edición (Levenshtein) cuentan los cambios para pasar de una cadena a otra; medidas de conjuntos de caracteres o de palabras (Jaccard, n-gramas) valoran solapes. Ninguna es perfecta: se calibran según el tipo de error esperado.

Emparejamiento de registros

El emparejamiento de registros asigna pares de registros a «misma entidad» combinando varias medidas de semejanza y un umbral. Es un problema de clasificación: ponderar cuánta confianza da coincidir en el apellido frente a coincidir en el código postal.

Bloqueo para escalar

Comparar todos contra todos es cuadrático e inviable con millones de filas. El bloqueo agrupa por una clave barata (inicial, ciudad, rango de año) y solo compara dentro del bloque, sacrificando algo de exhaustividad por un ahorro enorme de cálculos.

Umbral y error

Fijar cuándo dos registros son «el mismo» es un compromiso entre falsos positivos (unir distintos) y falsos negativos (no unir iguales). El coste de cada error depende del uso: fusionar clientes erróneos puede ser peor que dejar duplicados.

Estandarizar categorías

Los campos categóricos acumulan variantes por dedo torpe y libre escritura. Mapearlas a un catálogo controlado, o corregirlas por proximidad a las categorías válidas, convierte una columna inservible en una variable usable para agrupar.

Fonética y apellidos

Para nombres, los códigos fonéticos agrupan grafías que suenan igual pero se escriben distinto (Smith y Smyth). Combinados con similitud de caracteres ayudan cuando la fuente del error es auditiva o de transcripción.

Tratar el texto como señal

En normalización no se busca solo igualar, sino preservar significado: no es lo mismo canónizar «EE. UU.» que borrar puntos que alterar un número de serie. Las reglas deben respetar lo que distingue dos entidades reales.

Errores frecuentes

La principal dificultad de la deduplicación en el mundo real es que los duplicados:

El bloqueo sacrifica algo de exhaustividad a cambio de evitar comparaciones cuadráticas.

Validar con verdad terreno

Calibrar umbrales exige un pequeño conjunto etiquetado a mano que indique qué pares son realmente el mismo. Sin esa referencia, se elige el umbral a ojo; con ella, se puede medir precisión y recall del emparejamiento.

Merge y supervivencia

Una vez identificados los duplicados, hay que fusionarlos en un registro maestro: elegir qué campo gana cuándo discrepan, y dejar rastro del linaje. Perder el origen de cada valor compromete la auditoría posterior.

En ciencia de datos

Unidades de análisis duplicadas inflan artificialmente el tamaño muestral y rompen la independencia que suponen muchos modelos; además, un cliente partido en dos filas puede acabar a la vez en entrenamiento y validación, contaminando la evaluación.

Texto y duplicados

Cambios mínimos entre dos cadenas
Levenshtein
Solape de conjuntos de n-gramas
Jaccard
Unir registros de la misma entidad
emparejamiento
Agrupar para no comparar todo con todo
bloqueo
Mismo sonido, distinta grafía
fonetica

Ordena el flujo de deduplicación:

Normaliza
Bloquea
Compara
Fusiona

Data cleaning references
Material de referencia sobre limpieza y emparejamiento de datos.

Dos sistemas listan clientes: uno guarda «C/ Mayor, 5» y otro «Calle Mayor numero cinco». ¿Qué normalizaciones aplicarías y dónde pondrías el riesgo de unir clientes distintos?

Documentación pandas
Guía de referencia para limpieza de datos.