Comparador de diferencias CSV

Compara dos archivos CSV y visualiza al instante las filas añadidas, las filas eliminadas y las celdas modificadas. Elige cualquier columna como clave para emparejar filas, compara valores antes y después, e incluso archivos con columnas distintas. Todo se procesa en tu navegador.

Consejos

  • La columna clave usa por defecto la primera columna, pero si tus datos tienen un ID o clave primaria, selecciónala en su lugar: las filas seguirán emparejándose correctamente aunque cambie su orden o cantidad.
  • Si ninguno de los CSV tiene fila de encabezado, desmarca "Tratar la primera línea como encabezado" para comparar usando nombres automáticos como col1, col2, etc.
  • La sección "Filas modificadas" compara columna por columna las filas coincidentes y solo muestra las columnas que difieren, en formato "antes hacia después".
  • Los archivos TSV (separados por tabulador) también funcionan: basta con cambiar el delimitador a "Tabulador" y pegar los datos tal cual.
  • En lugar de subir un archivo, puedes pegar un rango copiado directamente de Excel o Google Sheets, y la comparación funcionará igual de bien.

Preguntas frecuentes

Se usa habitualmente para comparar datos maestros exportados antes y después de una actualización, o para verificar la consistencia de datos antes y después de una migración de sistema. Incluso con CSV extensos, se pueden identificar de inmediato las filas añadidas, eliminadas o modificadas, ahorrando mucho más tiempo que una comparación visual línea por línea.

Sí. Las filas se emparejan según el valor de la columna clave seleccionada, así que aunque el orden de las filas difiera entre los dos archivos, las filas con la misma clave se comparan correctamente. Si un valor de clave aparece más de una vez, prevalece la fila que aparece después.

Sí. La comparación se basa en una lista combinada de columnas construida a partir de ambos encabezados, por lo que las columnas se emparejan por nombre aunque su orden difiera. Una columna que solo existe en un archivo se trata como valor vacío en el otro al calcular la diferencia.

No. Todo el proceso de comparación se ejecuta íntegramente en JavaScript dentro de tu navegador, y el contenido introducido o subido nunca se transmite a ningún servidor, por lo que es seguro usarlo incluso con datos sensibles.

Sí. Los valores de las celdas se comparan como cadenas exactas, por lo que las diferencias de mayúsculas/minúsculas o los espacios sobrantes al inicio o final se marcan como cambios. Si quieres ignorar este tipo de diferencias de formato, normaliza los datos previamente.
ツールくん

A propósito — Por qué un diff de texto no basta para archivos CSV

Comparar dos archivos CSV se ha hecho tradicionalmente colocando dos hojas de cálculo una junto a otra en Excel, o ejecutando un diff de texto basado en líneas con una herramienta como Git. Pero como cada fila de un CSV agrupa varios valores separados por comas, un diff basado en líneas solo indica que "la fila cambió", sin precisar qué columna en concreto se modificó. Esta herramienta identifica las diferencias a nivel de celda precisamente para cubrir esa carencia.

En los sistemas empresariales, exportar tablas de bases de datos a CSV para compararlas —a menudo llamado conciliación de datos— es una tarea habitual. Verificar que los datos coinciden exactamente antes y después de una migración, o comprobar que un proceso por lotes mensual produjo el resultado esperado, suele implicar miles o incluso decenas de miles de filas. A esa escala, emparejar filas de forma mecánica mediante una columna clave se vuelve imprescindible.

Los algoritmos de diff usados por sistemas de control de versiones como Git (por ejemplo, el algoritmo de Myers) son excelentes detectando adiciones y eliminaciones a nivel de línea, pero no siempre son ideales para datos CSV donde "la misma fila" puede tener solo uno o dos valores de columna modificados. Emparejar filas por clave y luego comparar celda por celda, como hace esta herramienta, es un enfoque diseñado específicamente para datos tabulares.