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.
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.
| Símbolo | Designación | Lo que cuenta | Sinónimos encontrados |
|---|---|---|---|
| n | Número de observaciones | Las filas | Tamaño de la muestra, efectivo, número de instancias, número de ejemplos |
| p | Número de variables | Las columnas | Número de atributos, número de features, dimensionalidad |
| X | Matriz de las variables explicativas | n filas × p columnas | Matriz de diseño, design matrix |
| y | Vector de la variable objetivo | n valores | Vector 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 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.
La estructura lógica —una matriz n × p— es independiente del soporte de almacenamiento. Los formatos siguientes codifican el mismo objeto.
| Formato | Naturaleza técnica | Tipado de las columnas | Volumetría adecuada | Uso característico |
|---|---|---|---|---|
| CSV | Archivo de texto con separador | Ninguno: todo es cadena, el tipo se infiere en la lectura | Hasta algunos centenares de MB | Intercambio entre aplicaciones, exportación |
| Hoja de cálculo (XLSX, ODS) | Archivo binario con hojas | Por celda, heterogéneo y no restringido | Algunas decenas de miles de filas | Captura y consulta de negocio |
| Tabla relacional | Tabla SQL persistida | Declarado y restringido por el esquema | Millones a miles de millones de filas | Sistema de información de producción |
| DataFrame | Estructura en memoria (pandas, polars, R) | Por columna, homogéneo y explícito | Limitada por la memoria disponible | Análisis y modelado |
| Parquet | Archivo binario orientado a columnas | Declarado en los metadatos | Muy grande, con compresión y lectura parcial | Almacenamiento 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).
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.
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) | Veredicto | Consecuencia metodológica |
|---|---|---|
| Menos de 100 | Insuficiente para una inducción fundamentada | Estadística descriptiva y experiencia de negocio. Toda estimación de rendimiento está dominada por el ruido de muestreo |
| 100 a 1 000 | Explotable bajo condiciones estrictas | Modelos 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 000 | Dominio nominal del ML tabular | Separación train / validation / test practicable, métodos de ensamble pertinentes, optimización de hiperparámetros razonable |
| Más de 100 000 | Volumen confortable | Modelos 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.
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 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.
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 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 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.
| Término | Disciplina de origen | Lo que designa | Contexto de empleo característico |
|---|---|---|---|
| Observación | Estadística | Una fila | Redacción rigurosa, artículos metodológicos |
| Individuo | Estadística | Una fila | Estadística descriptiva, análisis de datos |
| Instancia | Informática, IA simbólica | Una fila | Literatura de aprendizaje automático |
| Muestra, sample | Inglés, bibliotecas ML | Una fila (sentido ML) o un conjunto (sentido estadístico) | Documentación scikit-learn, plan de muestreo |
| Registro, record | Bases de datos | Una fila de tabla | Ingeniería de datos, SQL |
| Fila, row | Representación tabular | Una fila | Manipulación de archivos y DataFrames |
| Ejemplo, example | Aprendizaje supervisado | Una fila etiquetada | Descripción del conjunto de entrenamiento |
| Punto de datos, data point | Geometría del aprendizaje | Una fila vista como un punto | Razonamiento 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.
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 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 planteado | Una observación corresponde a | Orden de magnitud de n |
|---|---|---|
| Predecir la cancelación de una suscripción | Un cliente, en una fecha de observación dada | Número de clientes activos |
| Predecir el precio de venta de una vivienda | Una transacción inmobiliaria | Número de ventas históricas |
| Detectar una transacción fraudulenta | Una transacción con tarjeta | Número de transacciones procesadas |
| Predecir el fallo de un equipo | Un equipo observado en una ventana temporal | Número de equipos × número de ventanas |
| Clasificar un correo como no deseado | Un mensaje | Número de mensajes del corpus |
| Estimar la demanda de un producto | Un par producto × día | Número de productos × número de días |
| Diagnosticar una patología en imagen médica | Un examen de un paciente | Número de exámenes |
| Predecir la tasa de conversión de una campaña | Una campaña | Nú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.
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_id | client_id | date | montant | canal | retour_produit |
|---|---|---|---|---|---|
| CMD-1001 | C-042 | 2025-01-14 | 89,90 | web | 0 |
| CMD-1002 | C-317 | 2025-01-14 | 240,00 | magasin | 0 |
| CMD-1003 | C-042 | 2025-02-02 | 55,00 | web | 1 |
| CMD-1004 | C-042 | 2025-02-19 | 132,40 | web | 1 |
| CMD-1005 | C-988 | 2025-02-20 | 17,50 | web | 0 |
| CMD-1006 | C-317 | 2025-03-03 | 310,00 | magasin | 0 |
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.
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.
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.
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érmino | Disciplina de origen | Matiz propio | Registro |
|---|---|---|---|
| Variable | Estadística | Neutro, descriptivo | Redacción rigurosa |
| Atributo | Minería de datos, IA | Propiedad de una instancia | Literatura académica |
| Campo | Bases de datos | Componente tipado de un esquema | Ingeniería de datos |
| Columna | Representación tabular | Puramente estructural | Manipulación de archivos |
| Dimensión | Geometría, inteligencia de negocio | Eje del espacio de representación | Razonamiento geométrico |
| Característica | Terminología normalizada | Traducción de feature | Documentación en español |
| Feature | Anglicismo profesional | Variable sometida al modelo | Práctica corriente |
| Predictor, regresor | Estadística inferencial | Variable explicativa de un modelo | Econometría, bioestadística |
| Rol | Criterio de identificación | Tratamiento | Referencia |
|---|---|---|---|
| Identificador | Valor único o casi único por entidad, sin significado de negocio intrínseco | Excluir de las variables explicativas, conservar para la trazabilidad y el agrupamiento | Apartado 3.4, capítulo 027 |
| Variable explicativa | Disponible e informada en el momento en que la predicción debe producirse | Someter al modelo, tras codificación y transformación | Capítulos 006, 022, 024 |
| Variable objetivo | Magnitud que el modelo debe estimar | Aislar en y, nunca dejar en X | Capítulo 006 |
| Variable de fuga | Informada después o a causa del evento a predecir | Excluir sin excepción | Capítulo 028 |
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:
| Columna | Rol | Justificación |
|---|---|---|
client_id | Identificador | Designa la entidad, sin contenido explicativo |
anciennete_mois | Variable explicativa | Conocida antes del evento, portadora de información |
type_forfait | Variable explicativa | Conocida antes del evento |
nb_appels_support | Variable explicativa | Conocida antes del evento |
a_resilie | Variable objetivo | Magnitud a predecir |
date_resiliation | Variable de fuga | Informada solo si la cancelación tuvo lugar |
motif_resiliation | Variable de fuga | Recogida durante la cancelación |
agent_retention_assigne | Variable de fuga | Asignado 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.
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.
Algunos identificadores no son arbitrarios: su estructura codifica una información de negocio real.
| Identificador | Información codificada | Tratamiento correcto |
|---|---|---|
NUM-2019-PAR-00471 | Año de creación, agencia de origen | Extraer annee_creation y agence |
Número de serie AX7-2021W34-0912 | Gama, semana de fabricación | Extraer gamme y semaine_fabrication |
Referencia de producto EL-TV-55-OLED | Sección, categoría, formato | Extraer rayon, categorie, taille |
| IBAN | País, entidad bancaria | Extraer 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.
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.
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 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.
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 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 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).
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 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().
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.
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.
| Escala | Relaciones definidas | Cero | Estadísticas lícitas | Ejemplo |
|---|---|---|---|---|
| Nominal | Igualdad | No aplica | Moda, frecuencias, ji-cuadrado | Ciudad, marca |
| Ordinal | Igualdad, orden | No aplica | Moda, mediana, cuantiles, correlación de rangos | Clase energética |
| Intervalo | Igualdad, orden, diferencia | Convencional | Media, desviación típica, correlación lineal | Temperatura Celsius, año |
| Razón | Igualdad, orden, diferencia, razón | Absoluto | Todas, incluida la media geométrica | Precio, peso, duración |
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?
| Columna | Tipo de almacenamiento | Naturaleza real | Test de descalificación |
|---|---|---|---|
| Código postal | Entero | Categórica nominal | La media de dos códigos postales no designa ningún municipio |
| Código de región, código de departamento | Entero | Categórica nominal | El número ordena alfabéticamente, no geográficamente |
| Código de producto, código de tienda | Entero | Categórica nominal | Ninguna relación de orden de negocio entre dos códigos |
| Número de trimestre (1 a 4) | Entero | Ordinal cíclica | El trimestre 4 precede al trimestre 1 del año siguiente |
| Nota de evaluación (1 a 5) | Entero | Ordinal | La diferencia entre 1 y 2 no equivale a la que hay entre 4 y 5 |
| Identificador de cliente numérico | Entero | Identificador | Ningún significado de negocio (apartado 3.4) |
| Código NAF, código CSP | Cadena o entero | Nominal jerárquica | Nomenclatura por niveles, a explotar por nivel |
| Año de construcción | Entero | Numérica de intervalo | Caso 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).
| Tipo | Test mental | Ejemplos | Codificación requerida | Referencia |
|---|---|---|---|---|
| Numérica continua | ¿Un valor intermedio tiene sentido? | Precio, salario, temperatura, duración | Ninguna; normalización según el algoritmo | Capítulo 023 |
| Numérica discreta | ¿Es un conteo? | Número de habitaciones, número de llamadas | Ninguna; transformación log si asimetría fuerte | Capítulo 024 |
| Categórica nominal | ¿Una clasificación de las modalidades tiene sentido? No | Ciudad, marca, sector | One-hot; codificación por el objetivo con cardinalidad alta | Capítulo 022 |
| Categórica ordinal | ¿Una clasificación tiene sentido, sin diferencia medible? | Satisfacción, título, clase energética | Ordinal, con correspondencia explícita | Capítulo 022 |
| Binaria | ¿Exactamente dos modalidades? | Sí / no, activo / inactivo | 0 / 1, convención documentada | Capítulo 022 |
| Temporal | ¿Designa un instante? | Fecha, marca de tiempo | Descomposición de calendario y duraciones relativas | Capítulos 024 y 027 |
| Textual | ¿Contenido redactado libremente? | Comentario, descripción | Vectorización: conteo, TF-IDF, embedding | Capítulo 042 |
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.
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).
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 1Interpretació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.
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+ MBPrimera 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.
| Columna | Tipo inferido | Tipo esperado | Diagnóstico |
|---|---|---|---|
client_id, region, type_forfait, engagement, mode_paiement | object | object | Correcto: identificador y variables categóricas |
facture_mensuelle | object | float64 | Tipo mal inferido: separador decimal coma |
date_souscription | object | datetime64 | Tipo 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.
df["facture_mensuelle"] = (
df["facture_mensuelle"].str.replace(",", ".", regex=False).astype(float)
)
df["date_souscription"] = pd.to_datetime(df["date_souscription"])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.00Objeto 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ón | Valor | Diagnóstico |
|---|---|---|
age máximo | 142 | Fuera de dominio: error de introducción, valor sentinela, o fecha de nacimiento mal informada |
revenu_estime mínimo | −5 000 | Fuera de dominio: error de signo, o código sentinela desviado de su uso |
data_go_moyen máximo | 94,3 | Extremo pero plausible: valor atípico legítimo, a examinar (capítulo 021) |
satisfaction count | 7 412 | Completitud parcial: 26 % de faltantes |
a_resilie mean | 0,27 | La 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.
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.
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: int64Naturaleza 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 / minoritaria | Calificación | Consecuencia metodológica |
|---|---|---|
| 50 / 50 a 65 / 35 | Equilibrado | Ningún tratamiento específico; la exactitud sigue siendo interpretable |
| 65 / 35 a 90 / 10 | Desequilibrio moderado | Separación estratificada, ponderación de las clases, métricas por clase |
| 90 / 10 a 99 / 1 | Desequilibrio fuerte | Exactitud descalificada; PR-AUC, recall, precisión; ajuste del umbral |
| Más allá de 99 / 1 | Desequilibrio extremo | Remuestreo 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.
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: float64Interpretació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).
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: 9857Interpretació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.
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.
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).
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.
| client_id | age | anciennete_mois | type_forfait | engagement | facture_mensuelle | nb_appels_support | satisfaction | date_souscription | a_resilie |
|---|---|---|---|---|---|---|---|---|---|
| C-00001 | 34 | 8 | Mobile | Sans_eng | 29,90 | 0 | 4 | 2024-06-12 | 0 |
| C-00002 | 67 | 45 | Fibre | 24_mois | 64,90 | 3 | 2 | 2021-09-03 | 0 |
| C-00003 | 29 | 2 | Mobile | Sans_eng | 19,90 | 1 | — | 2024-12-20 | 1 |
| C-00004 | 52 | 61 | Fibre+TV | 24_mois | 89,90 | 0 | 5 | 2020-02-28 | 0 |
| C-00005 | 41 | 17 | Fibre | 12_mois | 49,90 | 7 | 1 | 2024-01-15 | 1 |
| Elemento de análisis | Determinación |
|---|---|
| Qué representa una observación | Un cliente, descrito en la fecha de extracción, con su estado de cancelación constatado en los doce meses siguientes |
| Identificadores a excluir | client_id: retirado de las variables explicativas, conservado para la trazabilidad y un eventual agrupamiento |
| Variable objetivo | a_resilie, binaria |
| Tipo de problema | Clasificación binaria, objetivo desequilibrado con aproximadamente un 27 % de positivos |
| Variables explicativas | age, anciennete_mois, type_forfait, engagement, facture_mensuelle, nb_appels_support, satisfaction, más las variables derivadas de date_souscription |
| Tipos de variables | Continua: facture_mensuelle. Discretas: anciennete_mois, nb_appels_support, age. Nominal: type_forfait. Ordinales: engagement, satisfaction. Temporal: date_souscription |
| Puntos de vigilancia | facture_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.
| annonce_id | commune | code_postal | surface_m2 | nb_pieces | etage | annee_construction | classe_energie | ascenseur | date_vente | prix_vente |
|---|---|---|---|---|---|---|---|---|---|---|
| A-10471 | Lyon 3e | 69003 | 68 | 3 | 4 | 1972 | D | 1 | 2024-03-14 | 331 000 |
| A-10472 | Villeurbanne | 69100 | 42 | 2 | 1 | 2015 | B | 1 | 2024-03-18 | 218 500 |
| A-10473 | Lyon 6e | 69006 | 105 | 5 | 2 | 1930 | E | 0 | 2024-04-02 | 712 000 |
| A-10474 | Bron | 69500 | 77 | 4 | 0 | 1988 | D | 0 | 2024-04-11 | 249 000 |
| A-10475 | Lyon 3e | 69003 | 31 | 1 | 6 | 2019 | A | 1 | 2024-05-06 | 189 900 |
| Elemento de análisis | Determinación |
|---|---|
| Qué representa una observación | Una transacción inmobiliaria concluida, y no un inmueble: un mismo inmueble revendido dos veces ocupa dos filas legítimas |
| Identificadores a excluir | annonce_id |
| Variable objetivo | prix_vente, numérica continua estrictamente positiva |
| Tipo de problema | Regresión |
| Variables explicativas | commune, surface_m2, nb_pieces, etage, annee_construction, classe_energie, ascenseur, más las variables derivadas de date_vente |
| Tipos de variables | Continua: surface_m2. Discretas: nb_pieces, etage. Intervalo: annee_construction. Nominal: commune. Ordinal: classe_energie (A a G). Binaria: ascenseur. Temporal: date_vente |
| Puntos de vigilancia | code_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).
| transaction_id | carte_id | horodatage | montant | commercant | categorie_mcc | pays | canal | delai_depuis_precedente_s | est_fraude |
|---|---|---|---|---|---|---|---|---|---|
| T-9910001 | K-4471 | 2025-02-11 08:14:22 | 12,40 | Boulangerie Vidal | 5462 | FR | Sans_contact | 43 120 | 0 |
| T-9910002 | K-4471 | 2025-02-11 08:19:07 | 1 890,00 | ElectroDirect | 5732 | LT | En_ligne | 285 | 1 |
| T-9910003 | K-4471 | 2025-02-11 08:21:55 | 1 940,00 | ElectroDirect | 5732 | LT | En_ligne | 168 | 1 |
| T-9910004 | K-2038 | 2025-02-11 09:02:11 | 67,30 | Station Aral | 5541 | DE | Puce | 61 400 | 0 |
| T-9910005 | K-7712 | 2025-02-11 09:03:48 | 8,90 | Metro Ligne 4 | 4111 | FR | Sans_contact | 22 010 | 0 |
| Elemento de análisis | Determinación |
|---|---|
| Qué representa una observación | Una 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 excluir | transaction_id y carte_id de las variables explicativas. carte_id se conserva imperativamente como clave de agrupamiento |
| Variable objetivo | est_fraude, binaria, con una tasa de positivos del orden del 0,1 al 0,5 % en población real |
| Tipo de problema | Clasificación binaria con desequilibrio extremo |
| Variables explicativas | montant, categorie_mcc, pays, canal, delai_depuis_precedente_s, más las variables derivadas de horodatage y los agregados deslizantes por tarjeta |
| Tipos de variables | Continuas: montant, delai_depuis_precedente_s. Nominales: categorie_mcc, pays, canal, commercant. Temporal: horodatage |
| Puntos de vigilancia | Tres 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.
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.
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.»
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.»
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.»
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.»
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.»
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.»
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.»
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.md005.2-quiz-observation-unite-analyse.md005.3-quiz-variable-roles.md005.4-quiz-typologie-variables.md005.5-quiz-inspection-initiale.md005.6-quiz-etudes-de-cas.mdCapítulo siguiente: 006-features-target.md