Parte VII · Cómo se hizo

19 · Metodología y determinismo

Todas las cifras de esta web se pueden reproducir a partir del fichero original. Ninguna la calcula un modelo de lenguaje: salen de scripts deterministas (misma entrada, misma salida, con semilla fija) y la web los lee de los ficheros que esos scripts escriben.

El proceso, en 10 scripts

01_perfilado.py Inspección: tipos, huecos, formatos, variantes.
02_etl.py Limpieza idempotente, marca de anomalías y log de transformaciones.
03_diccionario.py Diccionario de datos (hechos + descripción).
04_anonimizacion.py Pseudónimo aleatorio; fichero interno y público; k y l medidos sobre el público.
05_eda.py Descriptivos, anomalías, las 3 preguntas, KPI y mapa de calor, sobre ventas válidas.
06_robustez.py Tests de permutación que miden lo mismo que se afirma.
07_ml.py ¿Se puede segmentar?, predicción de la satisfacción, IsolationForest contra la regla.
08_inferencia.py Los contrastes de la parte de señal frente a ruido: intervalos, potencia, comparaciones múltiples y Simpson.
09_segmentacion.py Las técnicas de agrupamiento y de validación de modelos, sobre la tabla agrupada por correo.
10_atipicos_kpi.py Los conceptos de atípicos, estadística descriptiva y cuadro de mando que no calculaban los anteriores.

Las reglas que sigue el análisis

Qué se corrigió el 13/09/2026

La primera versión de esta web se dio por verificada con una comprobación de sumas y tenía errores que una revisión posterior encontró:

  • las 16 ventas fuera de las reglas del catálogo se daban por pedidos legítimos;
  • el mes del año se elegía sumando meses con distinto número de años y el test medía la variación del ticket medio en vez de la facturación;
  • los correos conservaban las tildes y los clientes se agrupaban por un correo que comparten personas distintas;
  • la k-anonimidad se medía sobre columnas distintas de las que se entregaban, con pseudónimos numerados por orden;
  • en la primera corrección del mismo día, el fichero público seguía llevando el producto y el pseudónimo juntaba a personas distintas con el mismo nombre. Lo encontró el revisor.
  • faltaban el mapa de calor, los KPI de crecimiento y satisfacción, las alertas y el informe técnico.

Todo está corregido en los scripts y los ficheros de la web salen de ellos.

Piezas propias que se reutilizan

Una de ellas es el contrato de resultado, con el que cada etapa entrega su salida en un formato que pueden leer tanto un programa como una persona:

Contrato de resultado (Result Contract)
{
  "status": "OK",              // OK | WARN | BLOCKED
  "risk": "LOW",               // LOW | MEDIUM | HIGH
  "summary": "19.984 ventas válidas (20.000 sin duplicados, 16 anómalas fuera); sin correlación ventas~satisfacción.",
  "artifacts": ["eda.json", "robustez.json"],
  "next": "Modelado y cuadro de mando"
}

El encargo pide mostrar los prompts utilizados. Este es el que recibió el verificador independiente de cifras.

Prompt del verificador independiente
Eres el verificador independiente. NO reutilices los scripts:
recalcula desde cero, con tu propio código, sobre el fichero crudo.
Reglas que tienes que reproducir: quitar duplicados exactos; importe = cant * precio;
anomalía = cantidad fuera de 1-5 o precio distinto del de catálogo de su producto.
Confirma o refuta cada cifra (al céntimo):
 - facturación registrada y facturación válida
 - número de anomalías y su importe
 - mes con más facturación y mes del año con mayor media (meses completos)
 - k mínima de [año, provincia] en el fichero público
Devuelve una tabla: cifra | tu_valor | publicado | CUADRA/NO CUADRA.
Por qué importa el determinismo
Un análisis que no se puede repetir no se puede auditar. Con scripts, semillas y logs, quien tenga el fichero original puede reproducir estas cifras y comprobar que son correctas. Ese fichero no se publica porque contiene datos personales. Así se encontraron los errores de la primera versión.

Siguiente: conclusiones y siguientes pasos →