Coincidencia aproximada en CSV online.
Encuentra coincidencias aproximadas entre dos archivos CSV — typos, mayúsculas, tildes, orden de palabras, abreviaturas. Similitud Jaro-Winkler con blocking, se ejecuta en tu navegador, nunca sube tus datos.
Cuando la coincidencia exacta no basta
La mayoría de reconciliaciones reales se rompen porque los datos están sucios de formas que ninguna regla de normalización puede arreglar. 'Acme Corporation' en la lista de proveedores y 'Acme Corp.' en el archivo de facturas. 'Johnatan Smith' en un campo tecleado y 'Jonathan Smith' en otro. 'Calle Mayor 12' y 'C/ Mayor, 12'. Ninguna de éstas es una coincidencia exacta y ninguna se caza quitando espacios o ignorando mayúsculas.
La coincidencia aproximada puntúa lo similares que son dos cadenas y marca los pares por encima de un umbral como coincidencias aproximadas. Es la herramienta correcta cuando tu clave de unión es un campo tecleado por humanos (nombre, empresa, dirección) y es la herramienta incorrecta cuando tu clave es un identificador estable (UUID, número de pedido, SKU) — para esos, la comparación exacta es más rápida y precisa.
Cómo funciona el matcher aproximado
MessyMatch usa similitud Jaro-Winkler, una métrica de distancia entre cadenas ajustada para strings cortas como nombres y códigos. Da peso extra a los caracteres que coinciden al principio de la cadena, lo que se ajusta bien a cómo los humanos realmente teclean mal los nombres. Una puntuación de 1.0 es idéntica; 0.0 es nada en común. El umbral por defecto es 0.92.
Comparar cada fila de A contra cada fila de B es O(n × m) y se vuelve inusable más allá de unos miles de filas por lado. El motor lo evita con blocking: sólo los pares candidatos que comparten un prefijo (o caen dentro de una banda de longitud) se puntúan. Los pares fuera del bloque no pueden ser casi-coincidentes por construcción, así que saltárselos es seguro. En la práctica esto mantiene la coincidencia aproximada usable hasta unas 50.000 filas por lado.
Cada casi-coincidencia en el panel de resultados muestra ambos valores originales, la puntuación de similitud y un motivo legible — diferencia de tilde, mayúsculas, typo de una letra, reordenamiento de palabras, token extra. El motivo es lo que hace el resultado accionable: no tienes que entornar los ojos mirando dos strings para averiguar por qué se marcaron.
Haz siempre la normalización barata primero
El error más común con la coincidencia aproximada es saltar directo a ella. La mayoría de coincidencias 'aproximadas' en datos CSV reales son en realidad coincidencias exactas después de quitar espacios, ignorar mayúsculas y quitar tildes. Activa esas reglas de limpieza primero — son gratis, deterministas y predecibles. Reserva el pase de aproximación para los registros que aún no coinciden tras las reglas baratas. El resultado: menos falsos positivos y una comparación mucho más rápida.
Casos de uso habituales para coincidencia aproximada en CSV
- Reconciliar una lista de proveedores contra un archivo de facturas (variantes de nombre de empresa)
- Combinar dos bases de contactos donde los nombres han sido tecleados por agentes distintos
- Emparejar registros de clientes entre sistemas sin ID compartido
- Detectar productos casi-duplicados en un catálogo antes de publicar
- Limpiar un export de encuesta donde las respuestas en texto libre varían ligeramente
- Cruzar una lista de citas académicas con formato inconsistente
Límites honestos de la coincidencia aproximada
Jaro-Winkler es una métrica a nivel de carácter. Es excelente para nombres, códigos de empresa y campos cortos con typos. Es más débil con descripciones largas en texto libre, direcciones con componentes reordenados y cualquier cosa que necesite comprensión semántica (p.ej. 'Big Apple' vs 'New York City'). Para esos casos la respuesta correcta suele ser normalización específica del dominio — un parser de direcciones, una tabla de alias conocidos — antes de pasar las cadenas limpias al matcher aproximado.
Browser-first por diseño
Todo el scoring se ejecuta en tu navegador mediante un Web Worker. Nuestros servidores no tienen un endpoint que reciba el contenido del archivo — el worker lee cada archivo desde el disco, ejecuta la comparación localmente y devuelve el resultado a la página. Sólo registramos metadatos de la operación (número de filas, tamaño, formato, tiempo) para los límites antiabuso. Mira la política de privacidad para la lista completa.
Herramientas relacionadas
Preguntas frecuentes
¿Qué es una coincidencia aproximada al comparar CSVs?+
Una coincidencia aproximada es cuando dos filas deberían referirse al mismo registro pero no son idénticas byte a byte ni siquiera tras normalizar espacios, mayúsculas y tildes. Por ejemplo, 'Acme Corp' vs 'Acme Corporation', o 'Johnatan' vs 'Jonathan'. MessyMatch las marca en la pestaña Coincidencias aproximadas con la puntuación de similitud y el motivo.
¿Qué algoritmo usa el matcher aproximado?+
Similitud Jaro-Winkler con un umbral configurable (0.92 por defecto). Para mantenerse rápido en archivos grandes, el motor también usa blocking — sólo se puntúan los candidatos que comparten prefijo o caen dentro de una banda de longitud — así no compara cada fila de A contra cada fila de B.
¿Puedo ajustar lo estricta que es la coincidencia?+
Sí. Baja el umbral de similitud para capturar coincidencias más laxas (más resultados, más falsos positivos). Súbelo para ver sólo coincidencias muy cercanas. El umbral está en el panel de compare settings junto a las reglas de limpieza.
¿Encontrará typos la coincidencia aproximada?+
Sí, ese es el caso de uso principal. Typos de una letra, caracteres transpuestos, errores comunes en nombres y empresas — todos salen como casi-coincidencias. Cada resultado muestra ambos valores originales para que decidas si fusionar.
¿Es la coincidencia aproximada más lenta que la exacta?+
Sí — puntúa pares candidatos en lugar de hashear en un mapa. Blocking + pre-filtro de longitud la mantienen tratable hasta unas 50.000 filas por lado en un portátil normal. Más allá, reduce el conjunto candidato con una comparación por columna clave primero y aplica aproximación sólo a los pendientes.
¿Se suben mis archivos para la coincidencia aproximada?+
No. El scoring Jaro-Winkler corre en tu navegador mediante un Web Worker. El contenido del archivo se procesa en tu navegador con un Web Worker y no se transmite a nuestros servidores.
¿En qué se diferencia esto de BUSCARV con verdadero?+
BUSCARV con coincidencia aproximada asume que la columna lookup está ordenada ascendentemente y devuelve el valor inmediatamente inferior, lo que es incorrecto para texto casi-igual. MessyMatch usa scoring de similitud de strings diseñado para datos humanos sucios — nombres, empresas, direcciones — no para rangos numéricos ordenados.