← 15 · ¿Se pueden segmentar los clientes? H1
Sin una clave que identifique al cliente, el RFM no se puede calcular
¿Qué hace falta en la tabla para poder segmentar a los clientes?
1 El problema
El RFM es la forma más sencilla de ordenar una cartera. Pide tres datos de cada cliente: cuánto hace de su última compra, cuántas veces ha comprado y cuánto ha gastado en total. Para calcularlos hay que saber qué ventas son de la misma persona.
Esta tabla tiene una fila por venta y ninguna columna de cliente. Tiene nombre, correo y teléfono. Es fácil usar uno de ellos como si fuera la columna de cliente.
2 Por qué engaña
El correo parece la clave perfecta, porque se repite: hay 12.953 correos distintos para 19.984 ventas. Agrupando por él salen miles de «clientes» que han comprado varias veces y con eso ya se podría calcular el RFM.
Pero el correo del fichero se forma con el nombre y el primer apellido. Dos personas con el mismo nombre comparten correo. Lo que parecía una compra repetida es solo una coincidencia de nombre.
3 El principio
4 La solución
Cruzar cada candidata con los demás datos personales. Si un mismo correo aparece con nombres distintos, no identifica a nadie. Y si al identificar bien a cada persona nadie repite, no hay frecuencia ni recencia que medir, así que el RFM no tiene nada que ordenar.
5 Qué pasa con estos datos
El correo falla: 5.035 direcciones las comparten personas con nombre distinto. El nombre tampoco sirve, porque los 97 que se repiten llevan un teléfono distinto cada vez: son personas distintas con el mismo nombre.
Contando por nombre y teléfono salen 19.984 personas, una por venta. Cada una ha comprado exactamente una vez, así que todas tienen la misma frecuencia y el RFM no distingue a nadie.
6 Para qué sirve
En cualquier análisis de clientes hecho sobre datos de ventas: antes de segmentar, calcular el valor de vida o medir la fidelidad. Si la empresa no asigna un código de cliente en origen, lo primero que hay que recomendar es que empiece a hacerlo, que es una de las recomendaciones de este trabajo.
El detalle técnico
Sobre las ventas válidas, sin las ventas marcadas como anomalía. Las siguientes páginas de este bloque aplican las técnicas de agrupamiento a la tabla agrupada por correo, para enseñar cómo se comportan. Sus grupos no son clientes.
Comprobar la clave antes de usarla
# Antes de calcular el RFM, comprobar que la clave identifica a una persona
por_correo = ventas.groupby("email")["nombre"].nunique()
(por_correo > 1).sum() # correos que usan personas distintas
# Y que las personas repiten
personas = ventas.groupby(["nombre", "telefono"]).size()
(personas == 1).mean() # parte de las personas con una sola compra Fuente: ml.json, campo segmentacion_clientes.