Glosario

Limpieza de datos: lo que hay que arreglar antes de que el modelo mire nada

Por , fundador de Arume · · lectura de 6 min

Definición

La limpieza de datos es el conjunto de revisiones y correcciones que se aplican a los datos de ventas y stock antes de entrenar un modelo: quitar duplicados, unificar unidades, tratar devoluciones, rellenar o marcar huecos, revisar valores extremos y detectar las semanas en que el producto estuvo agotado. Se hace con reglas fijas y se deja registro de cada cambio, de modo que se pueda revisar y repetir.

Un modelo de previsión aprende de lo que le das. Si en la exportación hay filas duplicadas, cajas contadas como unidades o semanas de rotura tomadas por demanda cero, aprenderá eso. La limpieza de datos es el trabajo menos vistoso del proyecto y el que más pesa en el resultado.

Qué es exactamente

La limpieza de datos reúne las tareas con las que una exportación en bruto se convierte en una tabla fiable: eliminar lo repetido, unificar lo que se mide de maneras distintas, decidir qué hacer con lo que falta y con lo que se sale del patrón. Wikipedia sitúa varias de estas tareas dentro de la ingeniería de variables, que incluye transformar o completar valores que faltan o no son válidos.

No se hace una vez. Se escribe como un conjunto de reglas que se aplican cada semana a los datos nuevos, para que el resultado sea el mismo hoy y dentro de un año, y que cada cambio quede anotado. Si una regla corrige 40 filas, hay que poder ver cuáles eran.

También se le llama

Data cleaning, depuración de datos, saneamiento, preparación de datos o data wrangling. Se solapa con el preprocesamiento (escalar, codificar categorías) que describe scikit-learn, aunque ese es un paso técnico posterior, cuando los datos ya son fiables.

Un ejemplo

Un distribuidor de recambios de electrodomésticos entrega una exportación de 48.000 líneas de venta de un año. La revisión encuentra cuatro tipos de problema, cada uno con una regla.

Duplicados: 1.150 líneas con el mismo albarán, producto y cantidad, creadas al reimportar un archivo. Se eliminan y se deja un registro. Unidades: un producto aparece en cajas de 12 en unos meses y en unidades sueltas en otros; se convierte todo a unidades, lo que cambia la media de 6 cajas a 72 unidades por semana. Devoluciones: 420 líneas con cantidad negativa; no son una venta negativa, y se restan de la venta de su semana o se tratan aparte según el caso.

Y el que más daño hace: roturas. Un producto estuvo a cero durante 9 semanas y aparecen 9 semanas con venta cero. No hubo falta de demanda, hubo falta de producto. Esas semanas se marcan como demanda censurada para que el modelo no aprenda que el producto vende poco.

Tras esto, 48.000 líneas se quedan en unas 46.400 útiles, con las unidades homogéneas y con una columna nueva que dice qué semanas no son representativas. Con eso se puede entrenar.

Ojo con esto

Dónde se complica la limpieza en la práctica:

  • Corregir sin avisar: si se cambian los datos sin anotarlo, nadie puede explicar luego por qué la previsión es esa. Lo corregido debe poder auditarse.
  • Limpiar de más: quitar todos los valores extremos borra la temporada y las promociones. Hyndman y Athanasopoulos advierten de que reemplazar valores atípicos sin pensar en su causa es peligroso.
  • Hacerlo con todos los datos antes de separar la prueba: si se calculan medias o escalas con el conjunto completo, la prueba tiene información del futuro. scikit-learn recomienda ajustar el escalado solo con el entrenamiento.
  • Dar por buenos los códigos: el mismo producto con dos códigos (el antiguo y el nuevo) parte su historial en dos y el modelo cree que hay dos productos con poco histórico.

Dónde aparece en el sistema

Es el primer paso de la carga semanal, antes de la previsión. El sistema lee tu programa con un usuario que solo puede leer, aplica las reglas de limpieza, genera un informe de lo encontrado y lo que ha hecho, y marca lo que no sabe resolver para que alguien de tu empresa lo mire.

El análisis gratuito arranca justo por ahí: antes de hablar de previsión, se enseña cuántas líneas duplicadas, semanas de rotura y saltos de stock sin explicar hay en tu exportación. Esa cifra, en sí misma, suele ser reveladora.

Términos relacionados

Datos faltantes, valor atípico, ingeniería de variables, demanda censurada y maestro de artículos.

Preguntas frecuentes

¿Cuánto tiempo lleva limpiar los datos de una empresa?

Depende de cómo estén. La primera pasada suele llevar más tiempo, porque hay que descubrir qué problemas tiene tu exportación. Después las reglas se aplican solas cada semana.

¿Tenemos que limpiar nosotros el ERP antes de empezar?

No. Se trabaja sobre la exportación tal como sale, y el informe de limpieza te dice qué conviene arreglar en origen, como códigos duplicados, para que no vuelva a pasar.

¿Qué hacemos con los datos de antes de un cambio de programa?

Se usan si se pueden enlazar con los códigos actuales. Si no, se parte de la fecha del cambio o se empareja el historial antiguo por equivalencias de productos. Conviene saberlo antes de empezar.

¿La limpieza puede cambiar las cifras que ya tenemos en contabilidad?

No toca tu programa: trabaja sobre una copia de los datos. Las correcciones se aplican solo a los datos que usa el modelo, y las cifras contables no se modifican.

Fuentes

  1. Wikipedia: Feature engineering (completar y transformar valores no válidos)
  2. Hyndman y Athanasopoulos, Forecasting: Principles and Practice (3.ª ed.), valores atípicos y faltantes
  3. scikit-learn: Preprocessing data (escalado ajustado solo con entrenamiento)

¿Quieres saber qué pasa con tu stock?

Mándanos un export de ventas y stock y te devolvemos un informe corto: roturas, dinero parado y qué cambiaríamos primero. Sin compromiso.

hello@arume.io

Escríbenos por WhatsApp

Cuéntanos tu proyecto

Te contesta Manuel en menos de 48 horas laborables. Sin compromiso.

O por WhatsApp