Datos y hojas de cálculo · Limpiador CSV
Por qué Excel corrompe silenciosamente los campos CSV: ceros a la izquierda, fechas e identificaciones largas
· Por qué es importante
csv limpieza de datos hojas de cálculo
Abrir un CSV en una hoja de cálculo no es neutral: los códigos postales pierden ceros, los códigos se convierten en fechas y los identificadores largos se convierten en notación científica. Esta publicación explica por qué sucede esto, qué es irrecuperable y cómo mantener intacto el archivo sin formato.
Un archivo que estaba bien hasta que alguien lo abrió: el código postal 01234 se convierte en 1234 y el daño se recupera
Un archivo sale de un sistema fuente con el código postal 01234, se abre en una hoja de cálculo y regresa al analista con 1234. El CSV original no tenía formato incorrecto: contenía texto con un cero a la izquierda. La diferencia surgió cuando un programa supuso que esa columna era numérica y luego guardó su valor interpretado. Una vez que alguien sobrescribe el archivo fuente, una herramienta de limpieza posterior no podrá saber si 1234 solía significar 01234 o 001234. Mantenga una exportación intacta antes de inspeccionarla en cualquier hoja de cálculo.
Conjeturas de escritura en abierto: cómo las hojas de cálculo infieren números, fechas y fórmulas a partir del texto, y por qué CSV no les permite decir lo contrario
CSV expresa filas, separadores y texto citado; no declara tipos de números, fechas o códigos postales por columna. Una hoja de cálculo que la abre directamente debe hacer conjeturas. Un valor que comienza con dígitos puede convertirse en un número, 03-04 puede interpretarse como una fecha según la configuración regional y un valor que comienza con = puede interpretarse como una fórmula en algunas aplicaciones. La cita de "01234" protege el delimitador CSV, no su clasificación futura como texto mediante un asistente de importación automática.
Las bajas clásicas: ceros a la izquierda, identificadores numéricos largos, cualquier cosa que se parezca a una fecha y valores que comiencen con un signo igual.
Los ceros a la izquierda en códigos postales y SKU, identificadores con dígitos más significativos de los que puede conservar un formato de número de hoja de cálculo y cadenas ambiguas que parecen fechas son víctimas clásicas. La notación científica no es en sí misma una corrupción, es una opción de visualización, pero guardar una identificación larga después de una conversión numérica puede perder dígitos exactos. Los valores que parecen fórmulas de datos que no son de confianza son un riesgo de seguridad independiente. La exportación CSV de ToolAcre tiene una opción segura para la inyección de fórmulas que antepone inicios riesgosos, con la desventaja de que las celdas calculadas intencionalmente ya no se calcularán.
Por qué el daño suele ser permanente: la precisión que se pierde al guardar y las fechas que se vuelven a serializar en un formato diferente no se pueden revertir desde la salida
Supongamos que una referencia de cliente de 20 dígitos se redondea después de la interpretación numérica y se guarda. Los dígitos originales que faltan no se pueden recuperar a partir de un nuevo CSV. Una fecha convertida a una fecha interna y exportada en otra ubicación puede haber perdido si la fuente significaba el 3 de abril o el 4 de marzo. Es por eso que “lo limpiaré más tarde” no es un primer paso seguro. Conserve los bytes sin procesar antes de que cualquier software con escritura automática tenga la oportunidad de reemplazarlos.
En su lugar, trabajar en el texto sin formato: conservar una copia que ninguna hoja de cálculo haya tocado y limpiarla como texto antes de cualquier importación.
Trabaje en una copia de la exportación de texto con un analizador que considere las celdas como cadenas. CSV Cleaner de ToolAcre analiza delimitadores y campos entrecomillados en el navegador y muestra advertencias de fila sin eliminar silenciosamente celdas adicionales. Compruebe si el encabezado todavía incluye sus bytes iniciales originales y si los identificadores contienen los caracteres de origen exactos. Limpiar espacios o duplicados es independiente de interpretar el significado de un campo; un código postal debe seguir siendo una cadena incluso si cada carácter es un dígito.
Ejemplo resuelto: una exportación de producto con SKU y códigos postales, que muestra los cambios de ida y vuelta en una hoja de cálculo y lo que conserva una limpieza a nivel de texto.
Utilice una exportación ilustrativa con el encabezado sku;código postal;descripción y filas 00042;01234;"Rojo, pequeño" y 00043;00105;"Azul, grande". Una simple importación de coma colapsa los campos de punto y coma, mientras que la escritura numérica automática puede convertir 00042 y 01234 en 42 y 1234. El análisis de punto y coma de CSV Cleaner produce tres columnas textuales, incluida la coma citada dentro de cada descripción; Para exportar la copia limpia aún es necesario importar columnas como texto en la hoja de cálculo de destino. Compare los archivos sin procesar y de ida y vuelta antes de enviarlos a comprar.
Lo que esto no cubre: restaurar valores ya destruidos en un guardado anterior o configurar el asistente de importación de una hoja de cálculo.
Esta publicación no puede recuperar dígitos identificadores ni ceros a la izquierda ya destruidos en un archivo de hoja de cálculo guardado. Un limpiador a nivel de texto tampoco configura el asistente de importación de Excel, la configuración regional de un colega o un esquema de base de datos. Una vez que el archivo sin formato esté seguro, siga las instrucciones de importación de texto del proveedor de la hoja de cálculo para las columnas de código e ID. Pruebe una pequeña muestra a través del flujo de trabajo exacto del destinatario; "Se abre en columnas" no demuestra "conservó todas las cadenas".
Repare el archivo antes de que lo vea la hoja de cálculo: cómo ToolAcre CSV Cleaner le permite reparar delimitadores, codificaciones y citas antes de que la exportación se abra en una hoja de cálculo
Corrige el archivo antes de que lo vea la hoja de cálculo y luego elige un modo de importación que mantenga los identificadores textuales. CSV Cleaner puede reparar localmente el delimitador, la codificación y la cotización de una exportación no modificada. Esto no impide que una hoja de cálculo deje de adivinar los tipos de campos en su nombre, por lo que el original intacto y una comparación posterior a la importación siguen siendo las salvaguardas más importantes.