Tecnologías y protecciones 8 min de lectura

Normalización de datos: tres sentidos distintos de un mismo término

El término «normalización de datos» tiene tres sentidos: bases de datos relacionales, machine learning y limpieza de datos extraídos por scraping. Analizamos cada uno.

EW
Equipo Web-Scraping.es
Recopilación de datos para las necesidades del negocio
Publicado: 8 febrero 2025

Por qué este término genera tanta confusión

«Normalización de datos» es uno de esos términos que significan cosas completamente distintas según quién los pronuncie. Un ingeniero de bases de datos, un científico de datos y un especialista en calidad de datos, cuando dicen «hay que normalizar los datos», se refieren a tres procesos que no se parecen entre sí. Antes de ponerse manos a la obra, conviene aclarar de cuál de ellos se está hablando.

Los tres sentidos principales:

  1. Normalización de bases de datos — diseñar la estructura de las tablas de modo que se eliminen la redundancia y las anomalías. Es la teoría clásica de las bases de datos relacionales y las «formas normales».
  2. Normalización (estandarización, canonización) de datos — llevar los valores a un formato único: fechas, teléfonos, direcciones, mayúsculas y minúsculas, codificaciones. Es un capítulo de la limpieza de datos, ligado directamente al enriquecimiento y al emparejamiento de registros.
  3. Normalización de variables en estadística y ML — llevar las variables numéricas a una escala o distribución común para que los algoritmos funcionen correctamente.

Analicemos los tres por orden.


Sentido 1. La normalización de bases de datos

En qué consiste

La normalización de bases de datos es el proceso de descomponer las tablas en otras más pequeñas y lógicamente relacionadas, de modo que cada hecho se almacene exactamente en un lugar. La teoría la sentó Edgar Codd dentro del modelo relacional. El objetivo principal: eliminar la redundancia y las anomalías que la acompañan.

Qué problemas resuelve

Si los datos viven en una única tabla «plana» con duplicación, aparecen tres tipos de anomalías:

  • Anomalía de inserción. No se puede añadir un hecho sin disponer de los datos que lo acompañan. Por ejemplo, no se puede dar de alta a un empleado nuevo mientras no esté asignado a un proyecto, si ambas entidades comparten tabla.
  • Anomalía de actualización. El mismo hecho está duplicado en varias filas: al cambiarlo hay que corregir todas las copias, y es fácil acabar con datos incoherentes.
  • Anomalía de eliminación. Al borrar una fila se pueden perder sin querer datos que solo existían en ella (por ejemplo, al eliminar el último proyecto de un empleado, se pierde también al propio empleado).

Las formas normales

La normalización avanza por niveles — las «formas normales». Cada una es más estricta que la anterior e incluye sus requisitos.

Primera forma normal (1NF). Todos los valores son atómicos: en cada celda, un solo valor, sin listas ni grupos repetidos. No se puede guardar «teléfonos: 111, 222, 333» en un único campo; cada teléfono es un registro aparte.

Segunda forma normal (2NF). La tabla está en 1NF y, además, no hay dependencias parciales: cada atributo no clave depende de toda la clave primaria, no de una parte de ella. Es relevante con claves compuestas. Si la clave es «(pedido, producto)» y el nombre del producto depende solo de «producto», se viola la 2NF: el nombre del producto debe salir a una tabla propia.

Tercera forma normal (3NF). La tabla está en 2NF y no hay dependencias transitivas: los atributos no clave dependen solo de la clave, no unos de otros. Si en la tabla de empleados se guardan «departamento» y «responsable del departamento», el responsable depende del departamento y no del empleado directamente — es una dependencia transitiva, y el departamento con sus atributos se separa en otra tabla.

Forma normal de Boyce--Codd (BCNF). Una 3NF reforzada: todo determinante (aquello de lo que algo depende) debe ser una clave candidata. Resuelve casos poco frecuentes que la 3NF deja pasar cuando existen varias claves superpuestas.

Cuarta (4NF) y quinta (5NF) formas normales. Eliminan las dependencias multivaluadas y las dependencias de join, respectivamente. En la práctica rara vez se llega hasta ellas; para la mayoría de los sistemas el objetivo razonable es la 3NF o la BCNF.

La desnormalización: cuando la normalización estorba

La normalización está optimizada para la integridad y la escritura, pero fragmenta los datos en muchas tablas, lo que ralentiza la lectura por la abundancia de combinaciones (JOIN). Por eso, en los sistemas analíticos se suele ir en dirección contraria: se desnormaliza, introduciendo redundancia de forma consciente a cambio de velocidad de lectura.

Ejemplos típicos:

  • Almacenes de datos y OLAP. Los esquemas en «estrella» y en «copo de nieve» duplican datos a propósito en las tablas de dimensiones.
  • Lecturas de alta carga. Agregados precalculados, vistas materializadas.
  • NoSQL. Las bases documentales suelen guardar juntos los datos relacionados para leerlos con una sola consulta.

La regla es simple: normalice para los sistemas transaccionales (OLTP) y desnormalice de forma consciente para los analíticos (OLAP), sabiendo siempre qué precio (el riesgo de incoherencias) se paga por esa velocidad.


Sentido 2. La normalización como unificación de formatos (estandarización)

En qué consiste

Es el sentido que más aparece en las tareas de limpieza y enriquecimiento de datos. Aquí, normalizar significa llevar valores con un mismo significado a un formato canónico único. El objetivo: que los datos esencialmente iguales tengan el mismo aspecto; de lo contrario, es imposible compararlos, agruparlos y cruzarlos.

Esta normalización es la etapa obligatoria previa al emparejamiento de registros (record matching), la deduplicación y el enriquecimiento. No hay forma fiable de casar «Talleres López, S.L.» con «TALLERES LOPEZ SL» mientras los nombres no estén llevados a una forma común.

Qué se suele normalizar

Fechas y horas. Conversión a un estándar único — normalmente ISO 8601 (2026-06-29), una única zona horaria (a menudo UTC), un único formato. «29/06/2026», «June 29, 2026» y «2026/06/29» deben acabar siendo el mismo valor.

Números de teléfono. Conversión al formato internacional E.164 (+34612345678): quitar espacios, paréntesis y guiones, y añadir el prefijo del país.

Campos de texto. Recorte de espacios sobrantes, unificación de mayúsculas y minúsculas, eliminación de caracteres invisibles, colapso de espacios dobles.

Codificaciones y Unicode. Conversión a UTF-8 y a una única forma de normalización Unicode (NFC/NFD), para que los caracteres visualmente idénticos se almacenen con los mismos bytes. De lo contrario, «é» como un solo carácter y «é» como «e + acento combinado» se consideran cadenas distintas.

Direcciones. Estandarización a un formato único: expansión de abreviaturas («c/» → «calle»), orden fijo de los componentes, normalización de los códigos postales. A menudo se apoya en servicios especializados de geocodificación.

Unidades de medida y divisas. Conversión a una unidad base (todo a metros, todo a gramos, todo a una misma divisa al tipo de cambio de la fecha).

Valores categóricos. Reducción de sinónimos y variantes de escritura a un valor de referencia: «USA», «EE. UU.», «United States» → un único código de país. Es lo que se llama mapeo contra un catálogo (lookup/reference data).

Identificadores. Normalización de números de registro, dominios (minúsculas, quitar www), emails (dominio en minúsculas).

El proceso de estandarización

Un pipeline típico:

  1. Perfilado. Entender qué formatos aparecen realmente en los datos y hasta qué punto están «sucios».
  2. Definición de la forma canónica. Decidir a qué formato único se lleva cada campo.
  3. Parseo y descomposición. Separar el valor en componentes (por ejemplo, la dirección en calle, número y ciudad).
  4. Transformación. Aplicar las reglas de conversión a la forma canónica.
  5. Mapeo contra catálogos. Cotejar los valores con tablas de referencia (países, divisas, sectores).
  6. Validación. Comprobar la corrección del resultado (el teléfono tiene el número correcto de dígitos, la fecha existe).
  7. Registro (logging). Guardar qué se cambió y cómo, para garantizar la trazabilidad.

Herramientas

Una parte se resuelve con expresiones regulares y reglas; otra, con bibliotecas especializadas: para los teléfonos existen bibliotecas de parseo de números, para las direcciones, geocodificadores, y para Unicode, las funciones de normalización integradas en cada lenguaje. Para grandes volúmenes se emplean plataformas ETL/ELT y herramientas de calidad de datos.


Sentido 3. La normalización de variables en estadística y machine learning

En qué consiste

En ML, «normalización» significa llevar las variables numéricas a una escala o distribución comparables. El problema es que las variables vienen en unidades y rangos distintos: la edad (0--100) y los ingresos (0--10 000 000). Muchos algoritmos, en esas condiciones, «favorecen» a las variables con valores grandes por pura escala, no por su importancia.

Métodos principales

Normalización min-max. Comprime linealmente los valores al rango [0, 1] con la fórmula (x − min) / (max − min). Conserva la forma de la distribución, pero es sensible a los valores atípicos: un único máximo extremo «aplasta» todos los demás valores.

Estandarización (z-score). Lleva los datos a media 0 y desviación típica 1 con la fórmula (x − μ) / σ. No limita los valores a un rango fijo y funciona mejor cuando los datos se aproximan a una distribución normal. A menudo es justo esto lo que se llama «normalización», aunque técnicamente sea una estandarización.

Escalado robusto. Usa la mediana y el rango intercuartílico en lugar de la media y la desviación — resistente a los valores atípicos.

Normalización del vector (L2). Lleva el vector de variables a longitud unitaria. Se aplica, por ejemplo, al trabajar con vectores de texto y con la similitud coseno.

Transformación logarítmica. No es un escalado en sentido estricto, pero se usa con frecuencia para «enderezar» distribuciones muy sesgadas (ingresos, tamaños de empresas).

Cuándo hace falta y cuándo no

Hace falta para los algoritmos sensibles a la escala y a las distancias:

  • métodos basados en distancias (kNN, k-means, SVM);
  • descenso de gradiente (redes neuronales, modelos lineales) — la normalización acelera la convergencia;
  • métodos con regularización;
  • reducción de dimensionalidad (PCA).

No es imprescindible para los modelos de árbol (árboles de decisión, random forest, gradient boosting): trabajan con umbrales sobre cada variable por separado, y un escalado monótono no les afecta.

Una regla práctica importante

Los parámetros de normalización (min, max, μ, σ) se calculan solo sobre el conjunto de entrenamiento y después se aplican a los datos de test y de producción. Si se calculan sobre todos los datos a la vez, se produce una «fuga» de información del test al entrenamiento (data leakage) y la evaluación de la calidad del modelo sale inflada.


Cómo no confundirse: guía rápida

Si la conversación va de... ...se refiere a
Tablas, claves, JOIN, redundancia, anomalías Formas normales (Sentido 1)
Formatos de fechas, teléfonos y direcciones, duplicados, emparejamiento Estandarización / canonización (Sentido 2)
Variables, escala, entrenamiento del modelo, μ y σ Escalado de variables (Sentido 3)

Una forma práctica de saber de qué se habla: preguntar cuál es el objetivo. Integridad y eliminación de duplicidades en el almacenamiento — formas normales. Poder comparar y casar registros — estandarización. Que el algoritmo funcione correctamente — escalado de variables.


Relación con el enriquecimiento de datos

La normalización en el segundo sentido (estandarización) es el cimiento sin el cual el enriquecimiento no funciona. Para encontrar un registro en una fuente externa por una clave, esa clave debe estar unificada en ambos lados: dominios en minúsculas, teléfonos en E.164, nombres de empresas sin variaciones en la forma jurídica. Por eso, en un pipeline real de tratamiento de datos el orden suele ser este: primero el perfilado, después la normalización/estandarización, luego el emparejamiento y la deduplicación, y solo entonces el enriquecimiento con datos externos.

Conclusiones breves

«Normalización de datos» es un término paraguas que cubre tres tareas distintas:

  • Las formas normales ponen orden en la estructura de una base de datos relacional al eliminar la redundancia y las anomalías; a veces se incumplen a propósito (desnormalización) a cambio de velocidad de lectura.
  • La estandarización lleva los valores a un formato canónico único: es la base de la limpieza, el emparejamiento y el enriquecimiento de datos.
  • El escalado de variables prepara los datos numéricos para los algoritmos de machine learning sensibles a la escala.

La habilidad práctica clave consiste en deducir por el contexto qué normalización se necesita en cada caso, y no aplicar el método de un ámbito allí donde hace falta el de otro.