Règles avancées

Analyse des paniers d’achat en Python

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Aperçu de l'analyse des paniers

  • Procédure standard pour l'analyse des paniers.
    1. Générer un grand ensemble de règles.
    2. Filtrer les règles avec des métriques.
    3. Appliquer intuition et bon sens.
Analyse des paniers d’achat en Python

Générer des règles

  • Le nombre de règles croît exponentiellement avec le nombre d'articles.
    • La plupart des règles ne sont pas utiles.
  • Il faut appliquer un premier filtrage.
    • Vu au chapitre 3 avec l'algorithme Apriori
Analyse des paniers d’achat en Python

Comment fonctionne le filtrage ?

ID antécédents conséquents support Lift
1 Harry Potter The Hunger Games 0.001 1.01
2 Hunger Games Twilight 0.020 1.23
3 Pride and Prejudice The Hobbit 0.030 1.05
4 The Hobbit Twilight 0.015 0.85
5 Harry Potter The Hobbit 0.010 1.07
Analyse des paniers d’achat en Python

Filtrage multi-métriques

ID antécédents conséquents support zhang
1 Harry Potter The Hunger Games 0.001 -0.05
2 Hunger Games Twilight 0.020 0.17
3 Pride and Prejudice The Hobbit 0.030 0.06
4 The Hobbit Twilight 0.015 -0.04
5 Harry Potter The Hobbit 0.010 0.34
Analyse des paniers d’achat en Python

Réaliser un filtrage multi-métriques

print(rules.head())
  antecedents consequents  antecedent support  ... support  confidence  ... conviction  
0 Potter      Hunger       0.48                ...  0.12  ... 0.26      ...  0.92
1 Potter      Hunger       0.32                ...  0.12  ... 0.26      ...  0.92 
2 Twilight    Hunger       0.26                ...  0.09  ... 0.35      ...  1.04
3 Hunger      Twilight     0.32                ...  0.09  ... 0.28      ...  1.03 
4 Mockingbird Hunger       0.48                ...  0.10  ... 0.20      ...  0.85
Analyse des paniers d’achat en Python

Réaliser un filtrage multi-métriques

# Select subset of rules with low consequent support.
rules = rules[rules['consequent support'] < 0.05]
print(len(rules))
12
# Select subset of rules with lift > 1.5.
rules = rules[rules['lift'] > 1.5]
print(len(rules))
2
Analyse des paniers d’achat en Python

Passons à la pratique !

Analyse des paniers d’achat en Python

Preparing Video For Download...