← 14 · La lección: señal frente a ruido F15
Al comparar el mismo producto, casi toda la ventaja de 744 € desaparece
¿Cómo se compara a dos grupos que no venden lo mismo?
1 El problema
En la página de la paradoja de Simpson quedó claro que Islas Baleares factura más por venta que Murcia porque vende una mezcla distinta de productos. El desglose por producto lo muestra, pero deja 8 comparaciones sin una respuesta única.
La dirección necesita un solo número. ¿Cuánto vende de más Islas Baleares, una vez descontado que vende otro catálogo?
2 Por qué engaña
Restar las dos medias no sirve. Si el 15,0 % de las ventas de Islas Baleares son servidores y en Murcia lo son el 5,9 %, la resta de sus medias mide la diferencia de catálogo y no la de gestión comercial.
Tampoco vale quedarse con un solo producto, porque entonces se desaprovecha el resto de los datos. Con 8 productos y dos provincias, elegir uno es elegir la respuesta.
3 El principio
Es lo que hace un ensayo clínico cuando compara pacientes de la misma edad y el mismo peso. Aquí la variable que hay que neutralizar es el producto.
4 La solución
Por cada uno de los 8 productos se toman tantas ventas de una provincia como de la otra, elegidas al azar con semilla fija. El grupo más pequeño fija el número: por ejemplo, si de un producto hay 22 ventas en una provincia y 55 en la otra, se usan 22 y 22.
Después se restan una a una y se promedia. Esa media ya no contiene mezcla, porque cada resta compara el mismo producto contra el mismo producto.
5 Qué pasa con estos datos
Se forman 329 parejas del mismo producto. La ventaja de 744,28 € se queda en -13,77 €, Ese resto es pequeño, y su signo depende de qué ventas entren en la selección al azar y de cómo se pondere cada producto, así que no se le puede dar dirección. La diferencia bruta venía de qué se vende, no de lo que deja cada producto.
6 Para qué sirve
Siempre que se comparan dos grupos que de entrada no son comparables. Dos delegaciones con distinta cartera, dos campañas lanzadas a públicos distintos, el antes y el después de un cambio que coincidió con la temporada alta.
El emparejamiento por producto es el caso fácil, con una sola variable y valores discretos. Cuando las variables que descompensan son varias, lo que se empareja es la puntuación de propensión, que resume en un número la probabilidad de pertenecer a un grupo. El principio es el mismo: comparar solo lo que es comparable.
El detalle técnico
Emparejamiento exacto por producto, sin reemplazo, con su propio generador, derivado de la semilla 42 del script
08_inferencia.py. Con una sola variable de emparejamiento y ocho valores, la puntuación
de propensión se reduce a esto mismo, así que se calcula directamente y se puede revisar a mano.
Ver el emparejamiento
# Emparejar: por cada producto, tantas ventas de una region como de la otra
rng = np.random.default_rng(45) # su propio generador
pares, dif = 0, []
for prod, g in d.groupby("prod"):
ga = g[g.reg == "Islas Baleares"]["importe"].values
gb = g[g.reg == "Murcia"]["importe"].values
n = min(len(ga), len(gb)) # el grupo pequeno manda
sa, sb = rng.choice(ga, n, replace=False), rng.choice(gb, n, replace=False)
pares += n
dif.append((sa - sb).sum())
emparejado = sum(dif) / pares # la diferencia que queda
Fuente: inferencia.json, campo f15_emparejamiento.