Cómo hacer un análisis de correlación de 'cerveza y pañales'

8

Tengo datos que son equivalentes a:

shopper_1 = ['beer', 'eggs', 'water',...]
shopper_2 = ['diapers', 'beer',...]
...

Me gustaría hacer un análisis de este conjunto de datos para obtener una matriz de correlación que tendría una implicación similar a: si compró x, es probable que compre y.

Usando python (o tal vez cualquier cosa menos MATLAB), ¿cómo puedo hacer eso? Serían útiles algunas pautas básicas o indicadores sobre dónde debería buscar.

Gracias,

Editar - Lo que he aprendido:

  1. Este tipo de problemas se conocen como descubrimiento de reglas de asociación. Wikipedia tiene un buen artículo que cubre algunos de los algoritmos comunes para hacerlo. El algoritmo clásico para hacerlo parece ser Apriori, debido a Agrawal et. Alabama.

  2. Eso me llevó a naranja , un paquete de minería de datos con interfaz de Python. Para Linux, la mejor manera de instalarlo parece ser desde la fuente utilizando el archivo setup.py suministrado.

  3. Orange, por defecto, lee la entrada de los archivos, formateada en una de varias formas compatibles.

  4. Finalmente, un simple aprendizaje de la regla de asociación Apriori es simple en naranja.

Azarias R
fuente
3
Si estuviera buscando un paquete R, arulesvaldría la pena echarle un vistazo. Tal vez "reglas de asociación" es un buen término de búsqueda
Karsten W.
2
Vea también el algoritmo Apriori para el enfoque "estándar" de este problema.
cardenal

Respuestas:

7

Además de los enlaces que se dieron en los comentarios, aquí hay algunos consejos adicionales:

Sobre Python, supongo que ahora tiene una idea de lo que debería estar buscando, pero el paquete de minería de datos de Orange presenta un paquete sobre reglas de asociación y conjuntos de elementos (aunque para este último no puedo encontrar ninguna referencia en el sitio web).

Editar:

Recientemente me encontré con pysuggest, que es

un motor de recomendaciones Top-N que implementa una variedad de algoritmos de recomendación. Los sistemas de recomendación Top-N, una tecnología de filtrado de información personalizada, se utilizan para identificar un conjunto de N elementos que serán de interés para un determinado usuario. En los últimos años, los sistemas de recomendación top-N se han utilizado en varias aplicaciones diferentes para recomendar productos que un cliente probablemente comprará; recomendar películas, programas de TV o música que un usuario encuentre agradable; identificar páginas web que serán de interés; o incluso sugerir formas alternativas de buscar información.

chl
fuente
¿Cuántos productos, me pregunto, deben participar antes de que una matriz de correlación simple sea insuficiente?
rolando2