Tengo un conjunto de datos de usuarios que compran productos de un sitio web.
Los atributos que tengo son la identificación del usuario, la región (estado) del usuario, la identificación de las categorías del producto, la identificación de las palabras clave del producto, la identificación de las palabras clave del sitio web y el monto de ventas gastado del producto.
El objetivo es utilizar la información de un producto y un sitio web para identificar quiénes son los usuarios, como "jugador joven masculino" o "madre que se queda en casa".
Adjunto una imagen de muestra de la siguiente manera:
En total, hay 1940 categorías únicas y 13845 palabras clave únicas para productos. Para el sitio web, hay 13063 palabras clave únicas. Todo el conjunto de datos es enorme, ya que son los datos de registro diario.
Estoy pensando en la agrupación, ya que esos no están supervisados, pero esos id son números ordenados que no tienen significado numérico. Entonces no sé cómo aplicar el algoritmo. También estoy pensando en la clasificación. Si agrego una columna de clase basada en la cantidad de ventas del producto comprado. Creo que la agrupación es más preferida. No sé qué algoritmo debería usar para este caso, ya que las dimensiones de la identificación de las palabras clave podrían ser superiores a 10000 (cada producto podría tener muchas palabras clave, al igual que el sitio web). Necesito usar Spark para este proyecto.
¿Alguien puede ayudarme con algunas ideas o sugerencias?
Muchas gracias!