Estructura de un conjunto de datos

47 min
Bloque 1 — El vocabulario fundamental
Objetivo
saber describir rigurosamente la estructura de un conjunto de datos, nombrar sus dos dimensiones, identificar la unidad de análisis, distinguir el rol funcional de cada columna, clasificar cada variable en una tipología estable y conducir un protocolo de inspección inicial reproducible.
Duración estimada
35 minutos
Requisitos previos
capítulos 001 a 004
Quiz asociados
005.1-quiz-jeu-de-donnees.md a 005.6-quiz-etudes-de-cas.md

1. El conjunto de datos: definición y dimensiones

1.1 El problema del vocabulario

Sea el enunciado siguiente, representativo de la literatura aplicada:

«El dataset comprende 10 000 instancias descritas por 14 atributos, entre ellos una variable respuesta categórica. Cada muestra fue anotada manualmente.»

Traducción íntegra, sin pérdida de información:

«La tabla comprende 10 000 filas y 14 columnas. Una de las columnas contiene el valor a predecir, y ese valor es una categoría. Esa columna fue informada por operadores humanos.»

Los dos enunciados son estrictamente equivalentes. La diferencia proviene de una herencia terminológica: el dominio agrega vocabulario procedente de la estadística inferencial, de la informática, de las bases de datos relacionales y de la traducción directa del inglés. De ello resultan varias denominaciones concurrentes para un mismo objeto.

Punto de vigilancia: la ambigüedad no es solo léxica. La palabra muestra designa dos objetos diferentes según la disciplina (apartado 2.1) y la palabra feature designa a veces una columna cualquiera, a veces una columna efectivamente sometida al modelo (apartado 3.3). Estas dos confusiones producen errores metodológicos reales.

1.2 Definición

DEFINICIÓN — Conjunto de datos (dataset)

Definición rigurosa

Colección estructurada de observaciones, estando cada observación descrita por un conjunto común de variables medidas o registradas según un protocolo homogéneo.

Tres elementos de esta definición son vinculantes: la organización en filas y columnas es explícita y estable; todas las observaciones están descritas por las mismas variables, lo que autoriza la comparación término a término; una misma variable conserva el mismo significado y la misma unidad de una observación a otra.

Forma canónica

El conjunto de datos se representa mediante una matriz rectangular en la que cada fila corresponde a una observación y cada columna a una variable. Esta forma se denomina datos tabulares, o tidy data en la terminología de Wickham (2014), que establece tres reglas: una variable por columna, una observación por fila, una unidad de observación por tabla.

Traducción al lenguaje corriente

Una tabla en la que cada fila describe un caso observado y cada columna una información registrada sobre ese caso, la misma información para todos los casos.

Punto de vigilancia

Un conjunto de archivos heterogéneos no es un conjunto de datos en el sentido anterior. Lo es tras consolidación, la cual constituye una etapa de ingeniería por sí misma.

1.3 Las dos dimensiones y su notación

SímboloDesignaciónLo que cuentaSinónimos encontrados
nNúmero de observacionesLas filasTamaño de la muestra, efectivo, número de instancias, número de ejemplos
pNúmero de variablesLas columnasNúmero de atributos, número de features, dimensionalidad
XMatriz de las variables explicativasn filas × p columnasMatriz de diseño, design matrix
yVector de la variable objetivon valoresVector respuesta, etiquetas, labels

Un conjunto descrito por «n = 10 000, p = 14» se lee: 10 000 observaciones descritas cada una por 14 variables.

Punto de vigilancia: ninguna convención es universal. La literatura estadística anota el número de variables p (predictors), la literatura de aprendizaje automático a veces d o m. Igualmente, p designa según los autores el número total de columnas o solo el número de variables explicativas. La eliminación de la ambigüedad se hace por explicitación, no por convención.

DEFINICIÓN — Dimensionalidad

Definición rigurosa

Número de variables que describen cada observación, es decir, dimensión del espacio vectorial en el que cada observación se representa mediante un punto.

Interpretación geométrica

Un conjunto con p variables coloca cada observación en un punto de un espacio de p dimensiones. Dos observaciones cercanas en ese espacio presentan valores vecinos en el conjunto de las variables. La mayoría de los algoritmos explotan esta estructura, explícitamente para los métodos basados en distancias, implícitamente para los métodos que particionan el espacio.

Consecuencia metodológica

El volumen del espacio crece exponencialmente con p. A n constante, aumentar p enrarece las observaciones y degrada toda estimación local. Este fenómeno es la maldición de la dimensionalidad, tratada en el capítulo 025.

Traducción al lenguaje corriente

El número de columnas que describen cada caso. Cuanto más alto es, más filas hacen falta para que la inducción siga estando fundamentada.

1.4 Formas físicas de un mismo objeto lógico

La estructura lógica —una matriz n × p— es independiente del soporte de almacenamiento. Los formatos siguientes codifican el mismo objeto.

FormatoNaturaleza técnicaTipado de las columnasVolumetría adecuadaUso característico
CSVArchivo de texto con separadorNinguno: todo es cadena, el tipo se infiere en la lecturaHasta algunos centenares de MBIntercambio entre aplicaciones, exportación
Hoja de cálculo (XLSX, ODS)Archivo binario con hojasPor celda, heterogéneo y no restringidoAlgunas decenas de miles de filasCaptura y consulta de negocio
Tabla relacionalTabla SQL persistidaDeclarado y restringido por el esquemaMillones a miles de millones de filasSistema de información de producción
DataFrameEstructura en memoria (pandas, polars, R)Por columna, homogéneo y explícitoLimitada por la memoria disponibleAnálisis y modelado
ParquetArchivo binario orientado a columnasDeclarado en los metadatosMuy grande, con compresión y lectura parcialAlmacenamiento analítico, cadenas de procesamiento

Punto de vigilancia sobre el formato CSV: la ausencia de tipado es la causa más frecuente de tipos mal inferidos. Un identificador con ceros iniciales (00742) se lee como entero y pierde sus ceros; un decimal con separador coma se lee como texto; una cadena N/A impide la inferencia numérica de toda la columna. Estos defectos se detectan con df.info() (apartado 5.3).

ANALOGÍA — El formato y el contenido

Un mismo texto puede imprimirse, mecanografiarse, mostrarse en pantalla o dictarse. El soporte condiciona el coste de manipulación y los modos de alteración posibles, no el texto mismo.

Un conjunto de datos se comporta igual: su estructura lógica sigue siendo una matriz n × p, ya sea el soporte un archivo de texto de 3 KB o una tabla distribuida de 400 GB. La consecuencia práctica es que un cambio de formato nunca resuelve un problema de contenido: convertir a Parquet un CSV mal informado produce un Parquet mal informado.

1.5 Interpretación del volumen

El número de observaciones no tiene significado en términos absolutos: se interpreta en relación con el número de variables y la complejidad del fenómeno. Los órdenes de magnitud siguientes valen para el modelado tabular supervisado con p moderado, del orden de diez a cincuenta variables.

Volumen (n)VeredictoConsecuencia metodológica
Menos de 100Insuficiente para una inducción fundamentadaEstadística descriptiva y experiencia de negocio. Toda estimación de rendimiento está dominada por el ruido de muestreo
100 a 1 000Explotable bajo condiciones estrictasModelos simples y regularizados, pocas variables. Validación cruzada obligatoria, ya que un test set aislado es demasiado pequeño para ser informativo
1 000 a 100 000Dominio nominal del ML tabularSeparación train / validation / test practicable, métodos de ensamble pertinentes, optimización de hiperparámetros razonable
Más de 100 000Volumen confortableModelos de alta capacidad contemplables. La restricción se desplaza del volumen hacia la calidad, la representatividad y el coste de cálculo

Principio director: la relación n / p importa más que n solo. Un conjunto de 5 000 observaciones descritas por 8 variables es confortable; el mismo volumen descrito por 3 000 variables pertenece a un régimen de alta dimensión.

Punto de vigilancia: en clasificación, el volumen determinante no es n sino el efectivo de la clase menos representada. Un conjunto de 200 000 observaciones de las cuales 60 son positivas constituye un problema de 60 observaciones útiles. Este punto se desarrolla en el capítulo 050.


2. La observación: terminología y unidad de análisis

2.1 Las denominaciones concurrentes

DEFINICIÓN — Observación

Definición rigurosa

Unidad elemental del conjunto de datos, correspondiente a un individuo estadístico sobre el cual se ha registrado el conjunto de las variables. Una observación se materializa en una fila de la matriz n × p.

Origen del término

Estadística. La palabra individuo designa allí la unidad observada, ya se trate de una persona, un objeto, un evento o un período.

Traducción al lenguaje corriente

Un caso observado, descrito completamente.

Recomendación

Es el término más neutro y más preciso de los ocho recogidos en el apartado 2.2. Se adopta como término de referencia en este curso.

DEFINICIÓN — Instancia

Definición rigurosa

Ocurrencia particular descrita por el vector de sus valores de atributos, en la terminología del aprendizaje automático y de la representación del conocimiento.

Origen del término

Informática, por analogía con la instanciación de una clase: el esquema del conjunto de datos desempeña el papel de la clase, cada fila el de una instancia.

Punto de vigilancia

El término se emplea a veces en el sentido restrictivo de observación desprovista de etiqueta, presentada al modelo en fase de predicción. Este uso es minoritario pero está documentado.

DEFINICIÓN — Muestra (sample): un término de doble sentido

Sentido estadístico — el sentido histórico

Subconjunto de una población, seleccionado según un plan de muestreo, a partir del cual se infieren propiedades de la población entera. Una muestra es aquí un conjunto de observaciones, de tamaño n.

«La muestra comprende 10 000 clientes.»

Sentido Machine Learning — el calco del inglés

Traducción directa de sample, empleado en las bibliotecas de aprendizaje para designar una sola fila. La documentación de scikit-learn define sistemáticamente X como un array de forma (n_samples, n_features), donde cada sample es una observación individual.

«El conjunto comprende 10 000 muestras.»

Consecuencia

La misma palabra designa el conjunto en una frase y el elemento en la otra. El sentido solo se deduce del contexto, en particular de la concordancia en número.

Recomendación

En redacción profesional, reservar muestra al sentido estadístico y emplear observación para la fila. En lectura, nunca presuponer el sentido.

DEFINICIÓN — Registro (record)

Definición rigurosa

Conjunto estructurado de campos que constituye una unidad de almacenamiento y de acceso en un sistema de gestión de datos. En el modelo relacional, un registro corresponde a una tupla de una relación, es decir, a una fila de tabla.

Traducción al lenguaje corriente

Una ficha: la unidad que el sistema lee, escribe o elimina de una sola vez.

Punto de vigilancia

Un registro en el sentido del sistema de información no coincide necesariamente con una observación en el sentido del modelado. Una tabla de transacciones comprende un registro por transacción; si la unidad de análisis elegida es el cliente, una observación agrega varios registros. Esta no coincidencia es el objeto del apartado 2.3.

DEFINICIÓN — Punto de datos (data point)

Definición rigurosa

Representación de una observación como punto de un espacio de p dimensiones, correspondiendo cada coordenada al valor de una variable.

Origen del término

Vocabulario geométrico del aprendizaje estadístico, empleado cuando el razonamiento recae sobre distancias, vecindades o fronteras de decisión.

Punto de vigilancia

En un uso relajado, data point designa a veces un valor aislado, es decir, una celda y no una fila. Este uso es impropio en contexto técnico.

2.2 Tabla de traducción

TérminoDisciplina de origenLo que designaContexto de empleo característico
ObservaciónEstadísticaUna filaRedacción rigurosa, artículos metodológicos
IndividuoEstadísticaUna filaEstadística descriptiva, análisis de datos
InstanciaInformática, IA simbólicaUna filaLiteratura de aprendizaje automático
Muestra, sampleInglés, bibliotecas MLUna fila (sentido ML) o un conjunto (sentido estadístico)Documentación scikit-learn, plan de muestreo
Registro, recordBases de datosUna fila de tablaIngeniería de datos, SQL
Fila, rowRepresentación tabularUna filaManipulación de archivos y DataFrames
Ejemplo, exampleAprendizaje supervisadoUna fila etiquetadaDescripción del conjunto de entrenamiento
Punto de datos, data pointGeometría del aprendizajeUna fila vista como un puntoRazonamiento sobre distancias y vecindades

Los ocho términos designan el mismo objeto en el contexto de este curso. Su coexistencia es un hecho de la literatura, no una distinción de fondo. La única ambigüedad verdadera recae sobre muestra.

2.3 La unidad de análisis

La elección de lo que una fila representa no es una propiedad dada del conjunto de datos: es una decisión de modelado, tomada previamente, que determina la pregunta a la que el modelo podrá responder.

DEFINICIÓN — Unidad de análisis (unidad estadística)

Definición rigurosa

Entidad de referencia sobre la que recae la medida y a la que se refiere la inferencia. Define lo que cuenta n y determina el alcance de las conclusiones extraídas del modelo.

Formulación operativa

La unidad de análisis responde a la pregunta: ¿sobre qué recae una predicción? El modelo producirá un valor por unidad de análisis, ni más ni menos.

Traducción al lenguaje corriente

Lo que una fila representa exactamente.

Punto de vigilancia

La unidad de análisis debe coincidir con la unidad de decisión de negocio. Un modelo cuya unidad de análisis es la transacción no responde directamente a la pregunta «¿este cliente está en riesgo?». Una divergencia impone una etapa de agregación explícita, con sus propias hipótesis.

Problema planteadoUna observación corresponde aOrden de magnitud de n
Predecir la cancelación de una suscripciónUn cliente, en una fecha de observación dadaNúmero de clientes activos
Predecir el precio de venta de una viviendaUna transacción inmobiliariaNúmero de ventas históricas
Detectar una transacción fraudulentaUna transacción con tarjetaNúmero de transacciones procesadas
Predecir el fallo de un equipoUn equipo observado en una ventana temporalNúmero de equipos × número de ventanas
Clasificar un correo como no deseadoUn mensajeNúmero de mensajes del corpus
Estimar la demanda de un productoUn par producto × díaNúmero de productos × número de días
Diagnosticar una patología en imagen médicaUn examen de un pacienteNúmero de exámenes
Predecir la tasa de conversión de una campañaUna campañaNúmero de campañas realizadas

Observación sobre la última fila: el número de campañas realizadas por una empresa se cuenta a menudo en decenas. La unidad de análisis determina, por tanto, directamente el régimen de volumen del apartado 1.5, y en consecuencia la viabilidad del proyecto. Pasar de la campaña al contacto individual hace pasar n de 40 a 400 000. No es el mismo estudio.

TRAMPA — La entidad repetida en varias filas

Situación

Un conjunto de datos de pedidos presenta una fila por pedido. Un mismo cliente que ha realizado varios pedidos ocupa varias filas.

commande_idclient_iddatemontantcanalretour_produit
CMD-1001C-0422025-01-1489,90web0
CMD-1002C-3172025-01-14240,00magasin0
CMD-1003C-0422025-02-0255,00web1
CMD-1004C-0422025-02-19132,40web1
CMD-1005C-9882025-02-2017,50web0
CMD-1006C-3172025-03-03310,00magasin0

Consecuencia sobre la separación de los datos

Una separación aleatoria coloca, con una probabilidad alta, algunos pedidos de C-042 en el entrenamiento y otros en el test. El modelo se evalúa entonces sobre un cliente cuyas particularidades ya ha aprendido: preferencia de canal, cesta media, propensión a la devolución. El rendimiento medido integra una componente de memorización de entidades ya vistas y sobreestima el rendimiento real sobre clientes desconocidos, único pertinente si el uso objetivo concierne a nuevos clientes.

Respuesta metodológica

La separación debe efectuarse por grupo: todas las filas de un mismo cliente se asignan al mismo lado de la partición. El mecanismo correspondiente es GroupKFold, tratado en el capítulo 027, siendo la variable de agrupamiento aquí client_id.

Punto de vigilancia

Esta restricción da a client_id un doble estatus: la columna debe excluirse de las variables explicativas (apartado 3.4) y a la vez conservarse en el conjunto de datos para servir de clave de agrupamiento. Eliminarla demasiado pronto hace imposible la separación correcta.

Casos afines

Paciente con varias consultas, equipo con varias lecturas, establecimiento con varios meses de actividad, imagen con varios anotadores.

ANALOGÍA — La unidad de conteo

Un responsable logístico anuncia haber procesado 12 000 unidades el mes pasado. La información es inexplotable mientras la unidad no se nombre: 12 000 artículos, 12 000 paquetes, 12 000 palés o 12 000 pedidos designan volúmenes de actividad separados por varios órdenes de magnitud.

Anunciar «el conjunto de datos comprende 50 000 filas» sin precisar qué es una fila corresponde a la misma indeterminación. La pregunta «¿50 000 qué?» es la primera que hay que plantear, y su respuesta condiciona el volumen realmente disponible, la estrategia de separación y el alcance de las conclusiones.

Pregunta a investigar sistemáticamente, antes de toda manipulación:

¿Qué representa exactamente una fila de este conjunto de datos, y una misma entidad del mundo real puede figurar en él varias veces?

La respuesta condiciona el cálculo de n efectivo, la estrategia de separación (capítulos 026 y 027), la presencia eventual de fuga por entidad (capítulo 028) y la interpretación de negocio de las predicciones.


3. La variable: terminología y roles funcionales

3.1 Las denominaciones concurrentes

DEFINICIÓN — Variable

Definición rigurosa

Magnitud susceptible de tomar valores diferentes según la observación considerada, que constituye una dimensión de descripción común al conjunto de las observaciones.

Origen del término

Estadística. El término se opone a constante: una columna cuyos valores son todos idénticos no es una variable en sentido pleno.

Traducción al lenguaje corriente

Una columna: una información registrada de la misma manera en todos los casos.

Punto de vigilancia

Una columna de varianza nula es formalmente una columna pero no tiene ningún poder discriminante. Su detección forma parte de la inspección inicial.

DEFINICIÓN — Atributo, campo, dimensión, característica, feature

Atributo (attribute) — Informática y minería de datos. Propiedad descriptiva de una instancia. Término dominante en la literatura de data mining y en los conjuntos de datos de referencia académicos.

Campo (field) — Bases de datos. Componente nombrado y tipado de un registro. El término es indisociable de la noción de esquema: un campo posee un nombre, un tipo declarado y restricciones de integridad.

Dimensión — Geometría del aprendizaje. Eje del espacio de representación. Falso amigo: en modelado de inteligencia de negocio, una dimensión designa una tabla de ejes de análisis, sentido enteramente distinto.

Característica — Traducción normalizada de feature, adoptada en las publicaciones en español y en la terminología académica.

Feature — Anglicismo dominante en la práctica. En su uso estricto, designa una variable efectivamente sometida al modelo como entrada, tras selección y transformación. Es este uso estricto el que se adopta aquí.

Punto de vigilancia

Variable y columna son términos descriptivos: califican lo que está presente en el archivo. Feature es un término funcional: califica un rol atribuido por el modelador. La confusión entre ambos es el objeto del apartado 3.3.

TérminoDisciplina de origenMatiz propioRegistro
VariableEstadísticaNeutro, descriptivoRedacción rigurosa
AtributoMinería de datos, IAPropiedad de una instanciaLiteratura académica
CampoBases de datosComponente tipado de un esquemaIngeniería de datos
ColumnaRepresentación tabularPuramente estructuralManipulación de archivos
DimensiónGeometría, inteligencia de negocioEje del espacio de representaciónRazonamiento geométrico
CaracterísticaTerminología normalizadaTraducción de featureDocumentación en español
FeatureAnglicismo profesionalVariable sometida al modeloPráctica corriente
Predictor, regresorEstadística inferencialVariable explicativa de un modeloEconometría, bioestadística

3.2 Los cuatro roles funcionales de una columna

RolCriterio de identificaciónTratamientoReferencia
IdentificadorValor único o casi único por entidad, sin significado de negocio intrínsecoExcluir de las variables explicativas, conservar para la trazabilidad y el agrupamientoApartado 3.4, capítulo 027
Variable explicativaDisponible e informada en el momento en que la predicción debe producirseSometer al modelo, tras codificación y transformaciónCapítulos 006, 022, 024
Variable objetivoMagnitud que el modelo debe estimarAislar en y, nunca dejar en XCapítulo 006
Variable de fugaInformada después o a causa del evento a predecirExcluir sin excepciónCapítulo 028

3.3 Una columna no es necesariamente una variable explicativa

Un archivo de 14 columnas no proporciona 14 variables explicativas. Proporciona 14 columnas cuyo rol queda por determinar, una por una. Sobre un extracto de archivo de abandono en telecomunicaciones:

ColumnaRolJustificación
client_idIdentificadorDesigna la entidad, sin contenido explicativo
anciennete_moisVariable explicativaConocida antes del evento, portadora de información
type_forfaitVariable explicativaConocida antes del evento
nb_appels_supportVariable explicativaConocida antes del evento
a_resilieVariable objetivoMagnitud a predecir
date_resiliationVariable de fugaInformada solo si la cancelación tuvo lugar
motif_resiliationVariable de fugaRecogida durante la cancelación
agent_retention_assigneVariable de fugaAsignado en reacción a una cancelación anunciada

De ocho columnas, solo tres son variables explicativas. Las tres columnas de fuga producirían, si se conservaran, un modelo que mostraría un rendimiento casi perfecto en validación y sin ningún valor en producción: codifican la respuesta. Este mecanismo se trata en el capítulo 028.

Criterio operativo único, aplicable a toda columna:

¿Este valor es conocido e informado en el instante preciso en que el modelo debe producir su predicción?

Una respuesta negativa descalifica la columna, sea cual sea su correlación con el objetivo. Una correlación alta es, por otra parte, el síntoma más frecuente de fuga, no una garantía de calidad.

3.4 El caso del identificador

DEFINICIÓN — Identificador

Definición rigurosa

Atributo cuya función es designar de manera unívoca una entidad dentro de una colección, independientemente de las propiedades de esa entidad. En el modelo relacional, corresponde a una clave primaria.

Propiedad característica

El valor de un identificador es arbitrario por construcción. Resulta de una convención de atribución —secuencia, marca de tiempo, sorteo aleatorio— y no de una medida del fenómeno estudiado.

Traducción al lenguaje corriente

Un número de expediente: permite encontrar el expediente, no dice nada sobre su contenido.

Un identificador debe excluirse de las variables explicativas por tres razones que se acumulan.

Ausencia de contenido informativo. El valor no mide nada. Ninguna regularidad que relacione el identificador con el objetivo puede tener fundamento causal.

Correlación espuria. La atribución sigue frecuentemente un orden cronológico: los identificadores bajos designan las entidades más antiguas. Un modelo detecta entonces una relación estadísticamente real entre el identificador y el objetivo, que no es más que un reflejo de la antigüedad. La relación es captada por un intermediario arbitrario en lugar de serlo por la variable que la porta verdaderamente.

Memorización. Un identificador casi único permite a un modelo de alta capacidad aislar cada observación en una hoja distinta. El modelo memoriza el conjunto de entrenamiento en lugar de inducir una regla: es el sobreajuste, tratado en el capítulo 031.

MATIZ — El identificador portador de información legítima

Algunos identificadores no son arbitrarios: su estructura codifica una información de negocio real.

IdentificadorInformación codificadaTratamiento correcto
NUM-2019-PAR-00471Año de creación, agencia de origenExtraer annee_creation y agence
Número de serie AX7-2021W34-0912Gama, semana de fabricaciónExtraer gamme y semaine_fabrication
Referencia de producto EL-TV-55-OLEDSección, categoría, formatoExtraer rayon, categorie, taille
IBANPaís, entidad bancariaExtraer pays y code_banque

Principio

La información se extrae en variables explícitas y tipadas; el identificador bruto se excluye después.

Justificación

La información extraída es interpretable: una variable agence se analiza, un fragmento de cadena no se analiza. Es robusta: un cambio de formato de numeración invalida la explotación directa del identificador, no la variable extraída. Es verificable: la regla de extracción es explícita y auditable.

Punto de vigilancia

Conservar el identificador bruto además de las variables extraídas reintroduce los tres riesgos anteriores. La extracción reemplaza al identificador, no se le añade.


4. Tipología de las variables

El tipo de una variable determina las estadísticas descriptivas lícitas, las transformaciones aplicables y la codificación requerida. La clasificación de cada columna constituye un requisito previo a todo modelado.

4.1 Variables numéricas

DEFINICIÓN — Variable numérica continua

Definición rigurosa

Variable cuantitativa que puede tomar, al menos teóricamente, todo valor de un intervalo del conjunto de los reales. Entre dos valores observados, existe siempre un valor intermedio admisible.

Test mental de reconocimiento

¿Un valor intermedio entre dos valores observados tiene sentido? Entre 1,72 m y 1,73 m, el valor 1,7248 m es admisible: la variable es continua.

Ejemplos

Precio, salario, temperatura, peso, estatura, duración, distancia, concentración.

Consecuencia sobre el tratamiento

Utilizable directamente por la mayoría de los algoritmos. Sensible a la escala para los métodos basados en distancias o en un descenso de gradiente, lo que impone una normalización o una estandarización (capítulo 023). Los métodos basados en árboles son insensibles a ella.

Punto de vigilancia

La medida siempre está redondeada a la precisión del instrumento. La continuidad es una propiedad del fenómeno, no de la lectura.

DEFINICIÓN — Variable numérica discreta

Definición rigurosa

Variable cuantitativa cuyo conjunto de valores admisibles es numerable, generalmente procedente de un conteo.

Test mental de reconocimiento

¿El valor resulta de un conteo, careciendo de sentido los valores intermedios? Una vivienda de 2,5 habitaciones no existe.

Ejemplos

Número de habitaciones, de hijos, de pedidos, de llamadas al soporte, de siniestros.

Consecuencia sobre el tratamiento

Tratada como numérica en la gran mayoría de los casos. Una variable de conteo de muy baja cardinalidad también puede tratarse como ordinal; la elección depende de la experimentación.

Punto de vigilancia

Las variables de conteo presentan frecuentemente una distribución fuertemente asimétrica con una masa en cero. Una transformación log(1 + x) es a menudo beneficiosa para los modelos lineales.

4.2 Variables categóricas

DEFINICIÓN — Variable categórica nominal

Definición rigurosa

Variable cualitativa cuyas modalidades constituyen clases exhaustivas y mutuamente excluyentes, sin relación de orden entre ellas.

Test mental de reconocimiento

¿Una clasificación de las modalidades de la más baja a la más alta tiene sentido? Si la respuesta es negativa, la variable es nominal: París no es ni superior ni inferior a Lyon.

Ejemplos

Ciudad, país, marca, color, sector de actividad, tipo de contrato, canal de adquisición, grupo sanguíneo.

Consecuencia sobre el tratamiento

Codificación obligatoria antes de someterla a un algoritmo. La codificación one-hot es la referencia para los modelos lineales; es costosa con cardinalidad alta. La codificación ordinal está proscrita, porque introduce un orden inexistente (capítulo 022).

Punto de vigilancia

La cardinalidad es el factor determinante. Una variable de cinco modalidades y una variable de quince mil modalidades requieren tratamientos distintos.

DEFINICIÓN — Variable categórica ordinal

Definición rigurosa

Variable cualitativa cuyas modalidades están dotadas de una relación de orden total, sin que la distancia entre modalidades consecutivas sea cuantificable ni se suponga constante.

Test mental de reconocimiento

¿La clasificación tiene sentido, mientras que la diferencia entre dos niveles consecutivos no es medible? «Insatisfecho < Neutro < Satisfecho» se ordena, pero las dos distancias no son comparables numéricamente.

Ejemplos

Nivel de satisfacción, nivel de estudios, clase energética, gama de producto, estadio de una patología, calificación de una agencia de rating.

Consecuencia sobre el tratamiento

Codificación ordinal que respete el orden de negocio, estando la correspondencia modalidad-valor definida explícitamente y nunca deducida del orden alfabético.

Punto de vigilancia

El cálculo de una media sobre una codificación ordinal supone la equidistancia de los niveles, hipótesis que la definición misma de la ordinalidad excluye. Una media de satisfacción de 2,7 es una comodidad de gestión, no una magnitud estadística fundamentada.

DEFINICIÓN — Variable binaria (dicotómica)

Definición rigurosa

Variable categórica con exactamente dos modalidades. Es nominal u ordinal según el dominio, siendo la distinción sin efecto práctico con dos modalidades.

Test mental de reconocimiento

¿La variable admite exactamente dos valores posibles, excluidos los valores faltantes?

Ejemplos

Cliente activo, suscripción a una opción, presencia de ascensor, resultado de un test.

Consecuencia sobre el tratamiento

Codificación directa en 0 / 1, sin codificación one-hot. La convención adoptada debe documentarse: 1 designa convencionalmente la modalidad de interés.

Punto de vigilancia

Cuando una variable binaria es el objetivo de una clasificación, la codificación de la clase positiva determina la interpretación de todas las métricas asimétricas: precisión, recall, PR-AUC. Una inversión de convención invalida la lectura de los resultados (capítulos 053 y 064).

4.3 Variables que exigen una transformación previa

DEFINICIÓN — Variable temporal

Definición rigurosa

Variable cuyos valores designan instantes o intervalos sobre un eje cronológico, dotado de una relación de orden y de una métrica de diferencia.

Test mental de reconocimiento

¿El valor designa un instante, y la diferencia entre dos valores tiene sentido en unidades de tiempo?

Ejemplos

Fecha de suscripción, marca de tiempo de transacción, fecha de nacimiento, fecha de última conexión.

Consecuencia sobre el tratamiento

Inexplotable tal cual. Se movilizan dos familias de transformaciones: la descomposición en componentes de calendario (año, mes, día de la semana, hora, indicador de fin de semana o de día festivo) y la conversión en duración relativa a un punto de referencia (antigüedad en días, plazo desde el último evento, tiempo restante antes del vencimiento). Estas construcciones pertenecen a la ingeniería de variables (capítulo 024).

Punto de vigilancia

La presencia de una variable temporal señala una posible dependencia cronológica. Si el modelo está destinado a predecir el futuro a partir del pasado, la separación train / test debe ser cronológica y no aleatoria (capítulo 027). Un modelo entrenado con datos posteriores a los del test se valida en condiciones imposibles en producción.

DEFINICIÓN — Variable textual

Definición rigurosa

Variable cuyos valores son cadenas de caracteres en lenguaje natural, de longitud variable y de estructura no restringida.

Test mental de reconocimiento

¿El contenido está redactado libremente, sin un conjunto finito de modalidades? Un comentario de cliente es textual; un código de país de tres letras es categórico aunque también se almacene como cadena.

Ejemplos

Comentario de evaluación, descripción de anuncio, asunto de un correo electrónico, verbatim de encuesta, motivo de reclamación introducido libremente.

Consecuencia sobre el tratamiento

Vectorización obligatoria: conteo de ocurrencias, ponderación TF-IDF, o representación vectorial densa. El capítulo 042 aborda la clasificación de texto por métodos bayesianos; el tratamiento en profundidad del lenguaje natural queda fuera del alcance de este curso.

Punto de vigilancia

Una columna textual de baja cardinalidad es en realidad una variable categórica mal tipada. El criterio de distinción es el número de valores distintos en relación con el número de observaciones: df["colonne"].nunique().

4.4 La escala de medida de Stevens

La tipología anterior es operativa. Se apoya en un marco teórico propuesto por el psicofísico S. S. Stevens en 1946, que clasifica las escalas de medida según las operaciones matemáticas que autorizan.

DEFINICIÓN — Las cuatro escalas de medida (Stevens, 1946)

Escala nominal — Los valores no son más que etiquetas. Solo la igualdad está definida; ninguna operación aritmética tiene sentido. Tendencia central lícita: la moda.

Escala ordinal — Los valores están ordenados, pero las diferencias no son interpretables. Igualdad y comparación están definidas. Indicadores lícitos: moda, mediana, cuantiles.

Escala de intervalo — Las diferencias son interpretables y constantes, pero el cero es convencional. La diferencia tiene sentido, la razón no lo tiene. Ejemplo canónico: la temperatura en grados Celsius, no siendo 20 °C el doble de caliente que 10 °C. Indicadores lícitos: moda, mediana, media, desviación típica.

Escala de razón — El cero es absoluto y significa la ausencia de la magnitud. Diferencias y razones son ambas interpretables: 40 € es efectivamente el doble de 20 €. Todas las operaciones son lícitas, incluidas la media geométrica y el coeficiente de variación.

Alcance del marco

La clasificación de Stevens proporciona el criterio riguroso de licitud de las estadísticas. La tipología operativa del apartado 4 le corresponde, quedando el intervalo y la razón agrupados bajo la denominación numérica porque los algoritmos usuales no los distinguen.

Punto de vigilancia

Este marco ha sido objeto de críticas, en particular de Velleman y Wilkinson (1993), que cuestionan su aplicación mecánica a la prohibición de ciertos análisis. Sigue siendo la referencia pedagógica y la mejor salvaguarda disponible contra los cálculos carentes de sentido.

EscalaRelaciones definidasCeroEstadísticas lícitasEjemplo
NominalIgualdadNo aplicaModa, frecuencias, ji-cuadradoCiudad, marca
OrdinalIgualdad, ordenNo aplicaModa, mediana, cuantiles, correlación de rangosClase energética
IntervaloIgualdad, orden, diferenciaConvencionalMedia, desviación típica, correlación linealTemperatura Celsius, año
RazónIgualdad, orden, diferencia, razónAbsolutoTodas, incluida la media geométricaPrecio, peso, duración

4.5 Los falsos amigos: numéricas en apariencia, categóricas por naturaleza

Una columna almacenada como entero no es necesariamente una variable numérica. El criterio decisivo no es el tipo de almacenamiento sino la naturaleza de la magnitud: ¿las operaciones aritméticas tienen un sentido de negocio?

ColumnaTipo de almacenamientoNaturaleza realTest de descalificación
Código postalEnteroCategórica nominalLa media de dos códigos postales no designa ningún municipio
Código de región, código de departamentoEnteroCategórica nominalEl número ordena alfabéticamente, no geográficamente
Código de producto, código de tiendaEnteroCategórica nominalNinguna relación de orden de negocio entre dos códigos
Número de trimestre (1 a 4)EnteroOrdinal cíclicaEl trimestre 4 precede al trimestre 1 del año siguiente
Nota de evaluación (1 a 5)EnteroOrdinalLa diferencia entre 1 y 2 no equivale a la que hay entre 4 y 5
Identificador de cliente numéricoEnteroIdentificadorNingún significado de negocio (apartado 3.4)
Código NAF, código CSPCadena o enteroNominal jerárquicaNomenclatura por niveles, a explotar por nivel
Año de construcciónEnteroNumérica de intervaloCaso inverso: la diferencia tiene sentido, la razón no

Consecuencia de un error de clasificación. Tratar un código postal como numérico lleva a un árbol de decisión a producir particiones del tipo «código postal inferior a 44300», que agrupan municipios sin ninguna proximidad geográfica ni socioeconómica: el modelo aprende la estructura arbitraria de la nomenclatura. Un modelo lineal postula por su parte una relación monótona entre el número de municipio y el objetivo, hipótesis carente de fundamento.

Punto de vigilancia: la transformación correcta de un código postal no consiste necesariamente en una codificación one-hot de varios miles de modalidades. Los enfoques usuales son la agregación a un nivel superior (departamento, área urbana), la unión de variables socioeconómicas territoriales, o la codificación por el objetivo con las precauciones de uso contra la fuga (capítulos 022 y 028).

4.6 Tabla recapitulativa de los tipos

TipoTest mentalEjemplosCodificación requeridaReferencia
Numérica continua¿Un valor intermedio tiene sentido?Precio, salario, temperatura, duraciónNinguna; normalización según el algoritmoCapítulo 023
Numérica discreta¿Es un conteo?Número de habitaciones, número de llamadasNinguna; transformación log si asimetría fuerteCapítulo 024
Categórica nominal¿Una clasificación de las modalidades tiene sentido? NoCiudad, marca, sectorOne-hot; codificación por el objetivo con cardinalidad altaCapítulo 022
Categórica ordinal¿Una clasificación tiene sentido, sin diferencia medible?Satisfacción, título, clase energéticaOrdinal, con correspondencia explícitaCapítulo 022
Binaria¿Exactamente dos modalidades?Sí / no, activo / inactivo0 / 1, convención documentadaCapítulo 022
Temporal¿Designa un instante?Fecha, marca de tiempoDescomposición de calendario y duraciones relativasCapítulos 024 y 027
Textual¿Contenido redactado libremente?Comentario, descripciónVectorización: conteo, TF-IDF, embeddingCapítulo 042

5. Protocolo de inspección inicial

Seis operaciones se realizan sistemáticamente, en este orden. El orden no es indiferente: las dimensiones condicionan la lectura de los tipos, los tipos condicionan la lectura de las estadísticas, y la distribución del objetivo condiciona la elección de las métricas.

Las salidas siguientes corresponden a un conjunto de datos de abandono en telecomunicaciones con 10 000 observaciones y 14 columnas.

5.1 Las dimensiones

python
import pandas as pd

df = pd.read_csv("attrition_telecom.csv")
print(df.shape)
(10000, 14)

Interpretación: 10 000 observaciones, 14 columnas. El régimen de volumen es nominal en el sentido del apartado 1.5, con una razón n / p favorable. Esta cifra debe recalificarse tras dos verificaciones: el número de observaciones realmente distintas (apartado 5.6) y el tamaño de la clase minoritaria (apartado 5.5).

5.2 Las primeras filas

python
pd.set_option("display.max_columns", None)
print(df.head())
  client_id  age region  anciennete_mois type_forfait engagement  \
0   C-00001   34    IDF                8       Mobile   Sans_eng
1   C-00002   67   PACA               45        Fibre    24_mois
2   C-00003   29    ARA                2       Mobile   Sans_eng
3   C-00004   52    IDF               61     Fibre+TV    24_mois
4   C-00005   41    OCC               17        Fibre    12_mois

  facture_mensuelle  data_go_moyen  nb_appels_support  satisfaction  \
0             29,90            8.4                  0           4.0
1             64,90            2.1                  3           2.0
2             19,90           14.7                  1           NaN
3             89,90           31.5                  0           5.0
4             49,90            6.8                  7           1.0

   revenu_estime mode_paiement date_souscription  a_resilie
0         1850.0   Prelevement        2024-06-12          0
1         3120.0   Prelevement        2021-09-03          0
2            NaN         Carte        2024-12-20          1
3         4470.0   Prelevement        2020-02-28          0
4         2260.0      Virement        2024-01-15          1

Interpretación: la lectura valida la estructura y revela dos anomalías de formato. La columna facture_mensuelle utiliza la coma como separador decimal, lo que impide la inferencia numérica. La columna date_souscription sigue siendo una cadena de caracteres mientras no se solicite ninguna conversión.

Punto de vigilancia: df.head() muestra las cinco primeras filas del archivo, que no constituyen una muestra aleatoria. Si el archivo está ordenado por fecha o por región, esas filas no son representativas. df.sample(5, random_state=0) complementa útilmente la inspección.

5.3 El esquema, los tipos y la completitud

python
df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 10000 entries, 0 to 9999
Data columns (total 14 columns):
 #   Column             Non-Null Count  Dtype
---  ------             --------------  -----
 0   client_id          10000 non-null  object
 1   age                10000 non-null  int64
 2   region             10000 non-null  object
 3   anciennete_mois    10000 non-null  int64
 4   type_forfait       10000 non-null  object
 5   engagement          9964 non-null  object
 6   facture_mensuelle  10000 non-null  object
 7   data_go_moyen       8791 non-null  float64
 8   nb_appels_support  10000 non-null  int64
 9   satisfaction        7412 non-null  float64
 10  revenu_estime       9503 non-null  float64
 11  mode_paiement      10000 non-null  object
 12  date_souscription  10000 non-null  object
 13  a_resilie          10000 non-null  int64
dtypes: float64(3), int64(4), object(7)
memory usage: 1.1+ MB

Primera lectura: la completitud. Todo valor de Non-Null Count inferior a 10 000 señala valores faltantes: engagement (36), data_go_moyen (1 209), satisfaction (2 588), revenu_estime (497). La magnitud determina la estrategia: una columna con un 26 % de faltantes no se trata como una columna con un 0,4 % (capítulo 018).

Segunda lectura: los tipos. El tipo object señala una columna almacenada como cadena de caracteres. Se distinguen tres casos.

ColumnaTipo inferidoTipo esperadoDiagnóstico
client_id, region, type_forfait, engagement, mode_paiementobjectobjectCorrecto: identificador y variables categóricas
facture_mensuelleobjectfloat64Tipo mal inferido: separador decimal coma
date_souscriptionobjectdatetime64Tipo mal inferido: conversión no solicitada

Punto de vigilancia: un tipo mal inferido excluye silenciosamente la columna de las estadísticas descriptivas y de los tratamientos numéricos. La columna facture_mensuelle, aun siendo una de las más explicativas de un fenómeno de abandono, no aparecerá en df.describe() y sería tratada como una variable categórica de varios cientos de modalidades por una codificación automática. Las causas usuales son el separador decimal, los espacios de millares, los símbolos de unidad y las cadenas N/A, - o inconnu.

python
df["facture_mensuelle"] = (
    df["facture_mensuelle"].str.replace(",", ".", regex=False).astype(float)
)
df["date_souscription"] = pd.to_datetime(df["date_souscription"])

5.4 Las estadísticas descriptivas

python
print(df.describe().round(2))
            age  anciennete_mois  data_go_moyen  nb_appels_support  \
count  10000.00         10000.00        8791.00           10000.00
mean      46.31            32.47          12.84               1.72
std       16.42            24.56           9.77               2.14
min       18.00             1.00           0.00               0.00
25%       33.00             9.00           5.60               0.00
50%       45.00            29.00          10.90               1.00
75%       58.00            55.00          18.20               3.00
max      142.00            72.00          94.30              21.00

       satisfaction  revenu_estime  a_resilie
count       7412.00        9503.00   10000.00
mean           3.41        2841.66       0.27
std            1.18        1420.33       0.44
min            1.00       -5000.00       0.00
25%            3.00        1950.00       0.00
50%            4.00        2680.00       0.00
75%            4.00        3520.00       1.00
max            5.00       18400.00       1.00

Objeto de esta operación: detectar los valores imposibles, es decir, situados fuera del dominio de definición de negocio de la variable. No son valores extremos sino errores.

ConstataciónValorDiagnóstico
age máximo142Fuera de dominio: error de introducción, valor sentinela, o fecha de nacimiento mal informada
revenu_estime mínimo−5 000Fuera de dominio: error de signo, o código sentinela desviado de su uso
data_go_moyen máximo94,3Extremo pero plausible: valor atípico legítimo, a examinar (capítulo 021)
satisfaction count7 412Completitud parcial: 26 % de faltantes
a_resilie mean0,27La media de una variable binaria es la proporción de la clase positiva

Punto de vigilancia sobre los valores sentinela. Los valores -1, 999, 9999, -9999, 0 en una variable estrictamente positiva y las fechas del 1 de enero de 1900 son códigos convencionales que señalan la ausencia de información en numerosos sistemas heredados. Tratados como valores reales, deforman las medias y crean relaciones artificiales.

Punto de vigilancia sobre el alcance. df.describe() solo cubre por defecto las columnas numéricas. El examen de las columnas categóricas exige df.describe(include="object"), que devuelve frecuencia, cardinalidad y modalidad más frecuente. Una cardinalidad anormalmente alta revela ahí un identificador no declarado como tal, o una variable textual mal clasificada.

5.5 La distribución de la variable objetivo

Se trata de la verificación con la mejor relación entre coste e información. Exige una línea de código y determina el tipo de problema, la elección de las métricas, la estrategia de separación y el modelo de referencia.

python
print(df["a_resilie"].value_counts(normalize=True).round(4))
print(df["a_resilie"].value_counts())
a_resilie
0    0.7347
1    0.2653
Name: proportion, dtype: float64

a_resilie
0    7347
1    2653
Name: count, dtype: int64

Naturaleza del problema. Dos modalidades: clasificación binaria. Un objetivo continuo pertenecería a la regresión, un objetivo con más de dos modalidades a una clasificación multiclase (capítulo 006).

Nivel de desequilibrio. Una razón de 73 / 27 constituye un desequilibrio moderado, manejable mediante una separación estratificada y una ponderación de las clases.

Modelo de referencia. Un clasificador que predice sistemáticamente la clase mayoritaria alcanza un 73,47 % de exactitud sin aprender nada. Todo rendimiento se compara con ese umbral, no con el 50 %: un modelo que muestra un 75 % aporta una ganancia marginal de 1,5 puntos.

Tamaño útil. La clase positiva cuenta con 2 653 observaciones. Es ese número, y no 10 000, el que limita la capacidad del modelo para caracterizar las cancelaciones.

Razón mayoritaria / minoritariaCalificaciónConsecuencia metodológica
50 / 50 a 65 / 35EquilibradoNingún tratamiento específico; la exactitud sigue siendo interpretable
65 / 35 a 90 / 10Desequilibrio moderadoSeparación estratificada, ponderación de las clases, métricas por clase
90 / 10 a 99 / 1Desequilibrio fuerteExactitud descalificada; PR-AUC, recall, precisión; ajuste del umbral
Más allá de 99 / 1Desequilibrio extremoRemuestreo controlado, aprendizaje sensible al coste, detección de anomalías

El desequilibrio se desarrolla en el capítulo 050, la elección de las métricas asociadas en los capítulos 053 y 064, el ajuste del umbral en el capítulo 062.

Punto de vigilancia: value_counts() ignora por defecto los valores faltantes. La llamada df["a_resilie"].value_counts(dropna=False) es indispensable: un objetivo parcialmente no informado señala un defecto de constitución del conjunto de datos, no siendo esas observaciones explotables ni en entrenamiento ni en evaluación.

5.6 Valores faltantes y duplicados

python
manquants = df.isnull().sum()
manquants = manquants[manquants > 0].sort_values(ascending=False)
print(manquants)
print((manquants / len(df) * 100).round(2))
satisfaction     2588
data_go_moyen    1209
revenu_estime     497
engagement         36
dtype: int64

satisfaction     25.88
data_go_moyen    12.09
revenu_estime     4.97
engagement        0.36
dtype: float64

Interpretación: la tasa importa más que la frecuencia bruta. Un umbral usual sitúa en torno al 5 % el límite por debajo del cual una imputación simple es generalmente sin consecuencias, y en torno al 40 a 50 % el nivel más allá del cual la pertinencia de la columna debe cuestionarse. Estos valores son referencias, no reglas.

Punto de vigilancia: la ausencia de valor es frecuentemente portadora de información. Una satisfaction no informada señala un cliente que nunca ha respondido a una encuesta, lo que constituye en sí mismo una señal de comportamiento. La creación de un indicador binario satisfaction_manquante antes de la imputación preserva esta información (capítulo 018).

python
print("Filas estrictamente duplicadas:", df.duplicated().sum())
print("Identificadores duplicados:", df["client_id"].duplicated().sum())
print("Clientes distintos:", df["client_id"].nunique())
Filas estrictamente duplicadas: 0
Identificadores duplicados: 143
Clientes distintos: 9857

Interpretación, y es el resultado con mayores consecuencias de toda la inspección. Ninguna fila está íntegramente duplicada, lo que descarta la hipótesis de un error de concatenación. En cambio, 143 identificadores aparecen varias veces: el conjunto comprende 9 857 clientes distintos descritos por 10 000 filas.

La unidad de análisis no es, por tanto, exactamente el cliente. Tres preguntas se imponen: ¿estas filas corresponden a varias fechas de observación de un mismo cliente, a contratos distintos, o a un defecto de consolidación? Según la respuesta, la separación deberá efectuarse por grupo (capítulo 027) y el apartado 2.3 se aplica íntegramente.

DEFINICIÓN — Duplicado estricto y duplicado funcional

Duplicado estricto

Dos filas idénticas en la totalidad de las columnas. Detección: df.duplicated(). Origen usual: concatenación repetida, unión mal cardinalizada, recarga parcial.

Duplicado funcional

Dos filas que designan la misma entidad del mundo real sin ser idénticas, debido a una diferencia de mayúsculas, de espaciado, de formato o de marca de tiempo. Detección: df.duplicated(subset=[...]) sobre las columnas que constituyen la clave de negocio.

Consecuencia sobre el modelado

Un duplicado estricto presente a ambos lados de una separación aleatoria garantiza una predicción correcta sobre la observación de test correspondiente, por memorización. El rendimiento medido queda mecánicamente sobreestimado. Se trata de una forma de fuga (capítulo 028).

Punto de vigilancia

La supresión de los duplicados no está sistemáticamente justificada. Dos transacciones de un mismo importe, en el mismo comercio, el mismo día, pueden ser auténticas. La decisión requiere la clave de negocio, nunca la sola identidad de los valores.

5.7 Lista de control en 12 puntos

LISTA DE CONTROL DEL PRIMER CONTACTO CON UN CONJUNTO DE DATOS

  1.  ¿Qué representa exactamente una fila? Formular la respuesta
      en una frase completa, validada por el negocio.
  2.  ¿Cuántas observaciones (n) y cuántas columnas (p)?
      ¿La razón n / p es compatible con la ambición del modelo?
  3.  ¿Una misma entidad aparece en varias filas?
      Verificar nunique() sobre la clave de negocio, no solo duplicated().
  4.  ¿Qué columna constituye la variable objetivo, y está
      íntegramente informada?
  5.  ¿Cuál es la distribución del objetivo? Deducir el tipo de
      problema, el nivel de desequilibrio y el modelo de referencia.
  6.  ¿Cuál es el rol funcional de cada columna: identificador,
      variable explicativa, objetivo, variable de fuga?
  7.  ¿Cuál es el tipo de cada variable, y el tipo inferido en la
      lectura coincide con la naturaleza real de la magnitud?
  8.  ¿Qué columnas presentan valores faltantes, a qué tasa,
      y la ausencia es portadora de información?
  9.  ¿Los valores extremos son plausibles? Distinguir el valor
      imposible del valor atípico legítimo.
  10. ¿Se emplean valores sentinela para señalar
      la ausencia de información (-1, 999, 9999, 1900-01-01)?
  11. ¿Hay presente una componente temporal, e impone
      una separación cronológica en lugar de aleatoria?
  12. ¿Cada variable explicativa estará disponible e informada
      EN EL MOMENTO en que la predicción deba producirse?

El duodécimo punto es el más frecuentemente omitido. Los once primeros tratan sobre el archivo tal como se presenta y se verifican mediante el código. El duodécimo trata sobre el proceso de negocio que produce los datos y solo se verifica mediante entrevista con las personas que explotan el sistema.

Una variable puede estar perfectamente informada en el histórico e indisponible en el momento de la predicción: informada más tarde en el proceso, calculada en un tratamiento nocturno, o introducida por un operador en reacción al evento mismo que el modelo debe anticipar. Un modelo construido sobre tales variables muestra un rendimiento excelente en validación y se vuelve inexplotable en producción (capítulo 028).


6. Estudios de caso: tres conjuntos de datos anotados

Cada uno de los tres casos siguientes presenta un extracto realista, y luego el análisis estructurado que hay que producir antes de todo modelado.

6.1 Abandono en telecomunicaciones

client_idageanciennete_moistype_forfaitengagementfacture_mensuellenb_appels_supportsatisfactiondate_souscriptiona_resilie
C-00001348MobileSans_eng29,90042024-06-120
C-000026745Fibre24_mois64,90322021-09-030
C-00003292MobileSans_eng19,9012024-12-201
C-000045261Fibre+TV24_mois89,90052020-02-280
C-000054117Fibre12_mois49,90712024-01-151
Elemento de análisisDeterminación
Qué representa una observaciónUn cliente, descrito en la fecha de extracción, con su estado de cancelación constatado en los doce meses siguientes
Identificadores a excluirclient_id: retirado de las variables explicativas, conservado para la trazabilidad y un eventual agrupamiento
Variable objetivoa_resilie, binaria
Tipo de problemaClasificación binaria, objetivo desequilibrado con aproximadamente un 27 % de positivos
Variables explicativasage, anciennete_mois, type_forfait, engagement, facture_mensuelle, nb_appels_support, satisfaction, más las variables derivadas de date_souscription
Tipos de variablesContinua: facture_mensuelle. Discretas: anciennete_mois, nb_appels_support, age. Nominal: type_forfait. Ordinales: engagement, satisfaction. Temporal: date_souscription
Puntos de vigilanciafacture_mensuelle está mal tipada (separador coma). satisfaction presenta un 26 % de faltantes cuya ausencia es informativa. date_souscription es redundante con anciennete_mois y debe descomponerse. La columna date_resiliation del archivo fuente es una variable de fuga, a excluir sin excepción

Comentario sobre la ordinalidad de engagement. Las modalidades Sans_eng, 12_mois y 24_mois están ordenadas por duración creciente; una codificación ordinal está justificada. Punto de vigilancia: una codificación automática basada en el orden alfabético produciría 12_mois < 24_mois < Sans_eng, situando la ausencia de compromiso en el nivel más alto. La correspondencia debe ser explícita.

6.2 Precio inmobiliario

annonce_idcommunecode_postalsurface_m2nb_piecesetageannee_constructionclasse_energieascenseurdate_venteprix_vente
A-10471Lyon 3e6900368341972D12024-03-14331 000
A-10472Villeurbanne6910042212015B12024-03-18218 500
A-10473Lyon 6e69006105521930E02024-04-02712 000
A-10474Bron6950077401988D02024-04-11249 000
A-10475Lyon 3e6900331162019A12024-05-06189 900
Elemento de análisisDeterminación
Qué representa una observaciónUna transacción inmobiliaria concluida, y no un inmueble: un mismo inmueble revendido dos veces ocupa dos filas legítimas
Identificadores a excluirannonce_id
Variable objetivoprix_vente, numérica continua estrictamente positiva
Tipo de problemaRegresión
Variables explicativascommune, surface_m2, nb_pieces, etage, annee_construction, classe_energie, ascenseur, más las variables derivadas de date_vente
Tipos de variablesContinua: surface_m2. Discretas: nb_pieces, etage. Intervalo: annee_construction. Nominal: commune. Ordinal: classe_energie (A a G). Binaria: ascenseur. Temporal: date_vente
Puntos de vigilanciacode_postal es un falso amigo numérico: categórico nominal, redundante con commune, a excluir o a agregar. annee_construction es una variable de intervalo, su conversión en antigüedad del inmueble en la fecha de venta es preferible. classe_energie es ordinal, con un orden decreciente de rendimiento a explicitar. El objetivo es fuertemente asimétrico a la derecha, lo que justifica el examen de un modelado sobre su logaritmo

Comentario sobre la dependencia temporal. El mercado inmobiliario experimenta una deriva del nivel de precios. Un modelo entrenado con transacciones de 2024 y aplicado en 2026 está expuesto a una deriva de concepto (capítulo 082). Si el uso objetivo consiste en estimar transacciones futuras, la separación debe ser cronológica: entrenamiento con los periodos antiguos, evaluación con el periodo más reciente (capítulo 027).

6.3 Fraude bancario

transaction_idcarte_idhorodatagemontantcommercantcategorie_mccpayscanaldelai_depuis_precedente_sest_fraude
T-9910001K-44712025-02-11 08:14:2212,40Boulangerie Vidal5462FRSans_contact43 1200
T-9910002K-44712025-02-11 08:19:071 890,00ElectroDirect5732LTEn_ligne2851
T-9910003K-44712025-02-11 08:21:551 940,00ElectroDirect5732LTEn_ligne1681
T-9910004K-20382025-02-11 09:02:1167,30Station Aral5541DEPuce61 4000
T-9910005K-77122025-02-11 09:03:488,90Metro Ligne 44111FRSans_contact22 0100
Elemento de análisisDeterminación
Qué representa una observaciónUna transacción con tarjeta, en un instante fechado. La unidad de análisis es la transacción, ni la tarjeta ni el titular
Identificadores a excluirtransaction_id y carte_id de las variables explicativas. carte_id se conserva imperativamente como clave de agrupamiento
Variable objetivoest_fraude, binaria, con una tasa de positivos del orden del 0,1 al 0,5 % en población real
Tipo de problemaClasificación binaria con desequilibrio extremo
Variables explicativasmontant, categorie_mcc, pays, canal, delai_depuis_precedente_s, más las variables derivadas de horodatage y los agregados deslizantes por tarjeta
Tipos de variablesContinuas: montant, delai_depuis_precedente_s. Nominales: categorie_mcc, pays, canal, commercant. Temporal: horodatage
Puntos de vigilanciaTres trampas se acumulan, desarrolladas a continuación. commercant presenta una cardinalidad de varios cientos de miles de modalidades y no es codificable en one-hot. categorie_mcc es un falso amigo numérico: nomenclatura categórica

Primera trampa: el desequilibrio extremo. Con un 0,17 % de fraudes, un clasificador que predice sistemáticamente la ausencia de fraude alcanza un 99,83 % de exactitud. Esta métrica queda descalificada de entrada. La evaluación se apoya en la precisión, el recall y el área bajo la curva precisión-recall, siendo la curva ROC demasiado optimista bajo desequilibrio extremo. El umbral de decisión se convierte en un parámetro de gestión arbitrado según el coste relativo de un fraude no detectado y de un bloqueo injustificado.

Segunda trampa: la entidad repetida. Una tarjeta da lugar a numerosas transacciones. Una separación aleatoria sitúa transacciones de una misma tarjeta a ambos lados de la partición: el modelo aprende los hábitos de consumo de tarjetas que volverá a encontrar en la evaluación, mientras que el uso objetivo consiste en pronunciarse sobre tarjetas cuyo historial reciente no ha sido aprendido. El agrupamiento por carte_id es obligatorio.

Tercera trampa: el orden temporal. Los esquemas de fraude evolucionan rápidamente, por oleadas asociadas a campañas activas. Una separación aleatoria entrena el modelo con transacciones posteriores a las de la evaluación: el modelo conoce esquemas que, en producción, aún no existirían. La separación debe ser estrictamente cronológica, siendo la ventana de evaluación posterior a la ventana de entrenamiento.

Punto de vigilancia sobre la acumulación. Las tres restricciones se aplican simultáneamente. La separación debe ser cronológica y respetar los grupos, lo que excluye las particiones estándar e impone un procedimiento específico: partición temporal, y luego exclusión de las tarjetas presentes a ambos lados de la frontera. Es un caso en que el análisis previo del conjunto de datos determina enteramente la arquitectura de la validación.

ANALOGÍA — Las tres trampas acumuladas

Un examinador desea evaluar la capacidad de un candidato para diagnosticar una enfermedad rara.

Si compone una prueba en la que un caso de cada seiscientos es patológico, un candidato que responde sistemáticamente «sujeto sano» obtiene un 99,8 % de respuestas correctas sin ninguna competencia médica. Es la primera trampa.

Si presenta en el examen expedientes de pacientes ya vistos durante la formación, mide la memoria del candidato y no su diagnóstico. Es la segunda trampa.

Si comunica al candidato, durante su formación, los casos que figurarán en una sesión posterior, mide una capacidad que nunca existirá en el ejercicio real. Es la tercera trampa.

Los tres sesgos se suman: un dispositivo de evaluación que los acumula produce una puntuación alta y carente de todo valor predictivo.


7. Errores de razonamiento frecuentes

ERROR — Modelar sin haber determinado la unidad de análisis

Un conjunto de 50 000 filas se presenta como si comprendiera 50 000 clientes. Comprende en realidad 50 000 contratos repartidos entre 12 000 clientes. El volumen efectivo queda dividido por cuatro, la separación aleatoria es inválida y el alcance de negocio de las predicciones no es el que se había anunciado.

Formulación correcta: «Antes de toda manipulación, la cuestión a instruir es la de lo que una fila representa exactamente, y la posibilidad de que una misma entidad figure en ella varias veces. La respuesta determina el volumen efectivo, la estrategia de separación y la interpretación de las predicciones.»

ERROR — Conservar los identificadores entre las variables explicativas

Un identificador es arbitrario por construcción. No tiene ningún poder explicativo, capta las correlaciones falaces inducidas por el orden de atribución, y su casi unicidad permite a los modelos de alta capacidad memorizar cada observación.

Formulación correcta: «Los identificadores se excluyen de las variables explicativas, conservándose al mismo tiempo en el conjunto de datos, para la trazabilidad y para el agrupamiento durante la separación. Cuando un identificador codifica una información de negocio, esta se extrae en una variable dedicada y el identificador bruto se descarta después.»

ERROR — Omitir el examen de la distribución del objetivo

Este examen cuesta una línea de código y determina el tipo de problema, el nivel de desequilibrio, el modelo de referencia, la elección de las métricas y la estrategia de separación. Su omisión lleva a interpretar una exactitud del 97 % como un rendimiento, cuando puede ser inferior a la de un clasificador constante.

Formulación correcta: «La distribución de la variable objetivo se examina antes de todo entrenamiento. Fija el modelo de referencia con el que todo rendimiento posterior debe compararse.»

ERROR — Tratar como numérica una variable categórica codificada en cifras

Un código postal, un código de región, un código de producto o un código de nomenclatura se almacenan como enteros y son categóricos por naturaleza. Tratados como numéricos, llevan a un árbol a producir particiones carentes de sentido («código postal inferior a 44300») y a un modelo lineal a postular una relación monótona entre un número de municipio y el objetivo.

Formulación correcta: «El tipo de almacenamiento no determina la naturaleza de la variable. El criterio es el sentido de negocio de las operaciones aritméticas: si la media de dos valores no designa nada, la variable es categórica.»

ERROR — Asimilar columna y variable explicativa

Un archivo de catorce columnas no proporciona catorce variables explicativas. Proporciona catorce columnas cuyo rol funcional queda por determinar: identificador, variable explicativa, variable objetivo o variable de fuga. Las columnas de fuga producen un rendimiento aparente próximo a la perfección en validación y un modelo sin valor en producción.

Formulación correcta: «El rol de cada columna se determina individualmente. El criterio de admisión entre las variables explicativas es la disponibilidad efectiva del valor en el instante en que la predicción debe producirse.»

ERROR — Omitir la verificación de los duplicados

Un duplicado estricto presente a ambos lados de una separación garantiza una predicción correcta por memorización y sobreestima el rendimiento medido. Un duplicado funcional —misma entidad, filas no idénticas— no es detectado por df.duplicated() y exige una verificación sobre la clave de negocio.

Formulación correcta: «La verificación se realiza en dos niveles: las filas estrictamente idénticas, y las filas que designan la misma entidad del mundo real. El segundo nivel exige el conocimiento de la clave de negocio y no es automatizable sin ella.»

ERROR — Considerar que el volumen dispensa del examen cualitativo

Un millón de observaciones cuyo objetivo está mal etiquetado, cuyas variables no están disponibles en producción, o en las que una entidad representa el 40 % de las filas, no produce un mejor modelo que diez mil observaciones limpias y correctamente encuadradas.

Formulación correcta: «El volumen condiciona la varianza de la estimación. No corrige ningún sesgo. Un defecto de encuadre se reencuentra idéntico a todas las escalas.»


8. Síntesis

ESTRUCTURA
    Un conjunto de datos es una matriz n × p.
        n = número de observaciones  (las filas)
        p = número de variables      (las columnas)
        X = matriz de las variables explicativas, y = vector objetivo

TERMINOLOGÍA DE LA FILA
    observación · individuo · instancia · muestra (sentido ML) ·
    registro · fila · ejemplo · punto de datos
    Un solo término es ambiguo: muestra, que designa también
    un subconjunto de una población en sentido estadístico.

TERMINOLOGÍA DE LA COLUMNA
    variable · atributo · campo · columna · dimensión ·
    característica · feature · predictor
    variable y columna describen; feature califica un rol.

LOS CUATRO ROLES FUNCIONALES DE UNA COLUMNA
    identificador          → excluir, conservar como clave
    variable explicativa   → someter al modelo
    variable objetivo      → aislar en y
    variable de fuga       → excluir con prioridad absoluta

TIPOLOGÍA DE LAS VARIABLES
    numérica continua     · numérica discreta
    categórica nominal    · categórica ordinal · binaria
    temporal              · textual
    Escalas de Stevens: nominal · ordinal · intervalo · razón

FALSOS AMIGOS
    código postal, código de región, código de producto, código de nomenclatura:
    numéricos en apariencia, categóricos por naturaleza.

PROTOCOLO DE INSPECCIÓN INICIAL
    df.shape · df.head() · df.info() · df.describe()
    df[cible].value_counts(normalize=True)
    df.isnull().sum() · df.duplicated().sum()

LA PRIMERA PREGUNTA
    ¿Qué representa exactamente una fila,
    y una misma entidad puede figurar en ella varias veces?

LA VERIFICACIÓN DE MEJOR RENDIMIENTO
    La distribución de la variable objetivo.

EL PUNTO MÁS FRECUENTEMENTE OMITIDO
    ¿Cada variable explicativa estará disponible
    en el momento en que la predicción deba producirse?

Enunciado de síntesis

Un conjunto de datos es una matriz cuyas filas son observaciones y cuyas columnas son variables; su lectura profesional consiste en establecer lo que una fila representa, en asignar a cada columna un rol funcional en lugar de suponerla explicativa, en clasificar cada variable en una tipología que determina su tratamiento, y en verificar que cada variable retenida estará efectivamente disponible en el instante de la predicción.


Quiz asociados

  • 005.1-quiz-jeu-de-donnees.md
  • 005.2-quiz-observation-unite-analyse.md
  • 005.3-quiz-variable-roles.md
  • 005.4-quiz-typologie-variables.md
  • 005.5-quiz-inspection-initiale.md
  • 005.6-quiz-etudes-de-cas.md

Capítulo siguiente: 006-features-target.md