• Saltar a la navegación principal
  • Saltar al contenido principal
Logo Codificando Bits

Codificando Bits

  • Academia
    • Rutas
    • Cursos
    • Proyectos
    • Tutoriales
  • Acceder
  • Suscribirse

Segmentación de clientes de E-commerce con k-means

En este proyecto veremos cómo hacer uso del algoritmo K-means para llevar a cabo una tarea muy común en Ciencia de Datos y Machine Learning: la segmentación de clientes.

Si estás suscrito a la Academia Online puedes acceder al enlace de descarga del set de datos y el código fuente de este proyecto.

Contenido:

¿Qué es la segmentación de clientes?

El problema a resolver

El set de datos

Limpieza del set de datos

Análisis exploratorio del set de datos

Segmentación de clientes con K-means

Análisis de cada segmento de cliente

El set de datos y el código fuente de este proyecto

¿Qué es la segmentación de clientes?

La segmentación de clientes busca dividir una base de datos de clientes en pequeños grupos o segmentos que compartan características similares como por ejemplo comportamientos de compra, rangos de edad, intereses, demografía, etc.

Y la segmentación de clientes resulta clave en muchos tipos de negocios pues al conocer cada segmento de cliente una empresa puede adaptar sus estrategias de marketing o su oferta de productos y servicios al perfil de los diferentes clientes mejorando no sólo la experiencia del cliente sino también generando beneficios económicos para la empresa.

El problema a resolver

En cualquier proyecto de Ciencia de Datos, Inteligencia Artificial o Machine Learning siempre partiremos de un problema a resolver. Tener claro el problema resolver nos servirá como una guía para el desarrollo del proyecto.

Para este proyecto plantearemos el problema a resolver a través de una pregunta: ¿cuáles son los perfiles de cliente de una tienda online (e-commerce)?

Y a lo largo del proyecto usaremos diferentes herramientas para la limpieza y el análisis exploratorio de datos así como el algoritmo k-means para poder responder a esta pregunta.

El set de datos

Comencemos viendo en detalle el set de datos que usaremos en este proyecto.

El set de datos se encuentra en el archivo «dataset_ecommerce.csv» y está disponible en el enlace de descarga al final de este proyecto.

El set de datos contiene un total de 55.056 registros (filas) y 7 columnas que corresponden a información recolectada del comportamiento de diferentes clientes de una tienda online. Cada cliente representa una fila en el set de datos y por cada cliente tendremos esta información:

  • «ID»: código de identificación del cliente
  • «n_clicks»: número de clicks realizados por el cliente en diferentes productos durante el periodo observado
  • «n_visitas»: número de veces que el cliente ha visitado el sitio web de la tienda durante el periodo observado
  • «monto_compras»: monto total de las compras (en dólares) hechas por el cliente durante el periodo observado
  • «monto_descuentos»: monto total de los descuentos(en dólares) otorgados al cliente durante el periodo observado
  • «dias_primera_compra»: días transcurridos entre la fecha de creación del set de datos y la fecha de la primera compra realizada por el cliente en la tienda online
  • «info_perfil»: un número entre 0 y 500 que indica el nivel de información suministrada por el cliente en su perfil en la página web (0 indica que el cliente prácticamente no ha suministrado información alguna más allá de sus datos de contacto)

Comencemos leyendo y dando una primera mirada al set de datos con ayuda de la librería Pandas y de la función «read_csv»:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Y con esta información a la mano ahora sí podemos resumir las características observadas en cada segmento de cliente:

  • Segmento 0:
    • Se trata de clientes que tienden a tener más interacciones con el sitio web que los otros dos segmentos. Esto se observa en un promedio en el número de visitas de 127 así como un número de clicks de 590.
    • Pero lo más importante es que se trata de clientes que están más interesados en las ofertas, pues el monto de los descuentos es en promedio de 1133,2 USD que es más alto que cualquiera de los otros dos segmentos.
  • Segmento 1:
    • Este segmento es el que menos interacciones tiene con el sitio web, con un número de visitas y de clicks promedio de 66 y 253 respectivamente.
    • Pero la principal característica de este segmento es que se trata de clientes que no buscan descuentos (promedio de 80,2 USD, el menor de todos los segmentos) y que a su vez tiene el monto de compras más alto de todos los segmentos (promedio de 3246,4 USD)
  • Segmento 2:
    • De los tres segmentos es el que menos montos en compras tiene (promedio de 673,9 USD) y se caracteriza además por tener niveles medios de interacción con promedios en el número de visitas y de clicks de 384.4 y 88.7 respectivamente.
    • De igual forma, tampoco se trata de un segmento de cliente particularmente interesado en los descuentos, alcanzando un promedio similar al observado en el segmento 1 (151,9 USD)

Así que en este punto ya hemos visto cómo hacer uso del algoritmo k-means para abordar un problema de segmentación de clientes en una tienda online.

Estos segmentos que acabamos de obtener permitirían a la empresa tomar decisiones acerca de las estrategias para por ejemplo fidelizar a los clientes de los segmentos 0 y 1 (que tienen un mayor monto en las compras realizadas) o para lograr que los clientes del segmento 2 adquieran más productos.

El set de datos y el código fuente de este proyecto

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Recuerda además que si eres suscriptor y tienes alguna duda de este proyecto me puedes contactar directamente a través del formulario que encontrarás en la Intranet.

Volver al índice de Proyectos

© Codificando Bits, LLC | Blog | Contacto | Servicios | Acerca de | Políticas

¿Has olvidado la contraseña?
¿Has perdido tu contraseña? Por favor, introduce tu nombre de usuario o dirección de correo electrónico. Recibirás por correo electrónico un enlace para crear una nueva contraseña.
body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb }