← 14 · La lección: señal frente a ruido F11
Salen 3 provincias especiales cuando el azar ya daba 2,6
Si se prueban 52 hipótesis a la vez, ¿cuántos hallazgos salen solo por azar?
1 El problema
La empresa vende en 52 provincias. Comparar la satisfacción de cada una contra la media de la compañía es una de las comparaciones habituales de un cuadro de mando. El contraste es sencillo de calcular.
Hecho sobre estos datos, salen 3 provincias significativas con el criterio habitual, el de p menor que 0,05.
| Provincia | n | Satisfacción | p | Con 0,05 |
|---|---|---|---|---|
| Córdoba | 272 | 5,846 | 0,0357 | significativa |
| Murcia | 295 | 5,837 | 0,0392 | significativa |
| Pontevedra | 289 | 5,145 | 0,0407 | significativa |
| Ciudad Real | 300 | 5,760 | 0,1015 | no significativa |
| Guadalajara | 296 | 5,230 | 0,1086 | no significativa |
2 Por qué engaña
Un umbral de 0,05 significa aceptar una equivocación de cada veinte. Con un solo contraste eso es asumible. Con 52, el número esperado de errores es 0,05 × 52 = 2,6.
Es decir, aunque las 52 provincias fueran idénticas, el método ya esperaba de antemano unos 2,6 falsos positivos. Han salido 3. El resultado está dentro de lo que produce el azar, así que no hace falta buscarles una explicación.
3 El principio
4 La solución
Las dos correcciones más usadas controlan cosas distintas.
Bonferroni divide el umbral entre el número de contrastes. Aquí queda en 0,00096. Lo que controla es que no haya ningún falso positivo en todo el estudio. Es muy exigente, por lo que se le escapan efectos reales pequeños.
Benjamini-Hochberg ordena los p de menor a mayor y los compara con un umbral que va aumentando. Lo que controla es la proporción de falsos positivos entre los resultados aceptados. Con un 5 %, si acepta veinte resultados admite que uno pueda ser falso.
La elección depende de lo que cueste equivocarse. Para decidir un tratamiento médico, Bonferroni. Para cribar mil genes y llevarse los cien mejores al laboratorio, Benjamini-Hochberg.
5 Qué pasa con estos datos
Las dos correcciones dan cero. El p más pequeño de las 52 provincias es 0,0357 y el umbral de Bonferroni está en 0,00096, así que no se acerca. Benjamini-Hochberg, que es la menos exigente de las dos, tampoco deja ninguna como significativa.
Con estos datos no se puede decir que ninguna provincia tenga una satisfacción distinta de la media de la empresa. Las 3 que lo parecían son compatibles con los falsos positivos que el método ya esperaba, unos 2,6.
6 Para qué sirve
Siempre que un panel permite filtrar por muchas categorías. Cada segmento que el usuario abre es un contraste más. El panel no lleva la cuenta de cuántos se han hecho.
También en los tests A/B con muchas métricas, en la búsqueda del «mejor canal» entre quince y en cualquier informe que empiece diciendo «hemos detectado que». La pregunta que hay que hacer es cuántas cosas se miraron antes de detectar esa.
El detalle técnico
Se contrasta cada provincia con al menos 30 ventas válidas con satisfacción contra la media global, con una t de una muestra. Los tres umbrales se aplican sobre los mismos 52 p, así que la diferencia entre correcciones se debe solo al umbral.
Ver las tres lecturas
# Los mismos 52 p-valores, leidos con tres umbrales distintos
p = sorted(p_por_provincia) # de menor a mayor
alfa = 0.05
sin_corregir = sum(1 for x in p if x < alfa) # cada test por su cuenta
bonferroni = sum(1 for x in p if x < alfa / len(p))
bh = 0 # Benjamini-Hochberg
for i, x in enumerate(p, 1):
if x <= i / len(p) * alfa:
bh = i # el ultimo que pasa arrastra a los anteriores
Fuente: inferencia.json, campo f11_comparaciones_multiples. El caso
del mes ganador resuelve
el mismo problema por otra vía: un test de permutación sobre el máximo.