Calculer la conviction avec une fonction
Après la réussite de son projet pilote, la fondatrice de la start-up d’ebooks décide de vous embaucher pour un projet bien plus ambitieux. Elle vous demande si vous pouvez calculer la conviction pour chaque paire de livres du jeu de données goodreads-10k, afin de s’en servir pour rapprocher certains livres sur le site.
Vous acceptez, mais vous réalisez qu’il vous faut une méthode plus efficace pour calculer la conviction, car vous devrez la calculer de nombreuses fois. Vous décidez donc d’écrire une fonction qui l’effectue. Elle prendra en entrée deux colonnes d’un DataFrame pandas, un antécédent et un conséquent, et retournera la métrique de conviction. Notez que pandas est disponible sous pd et numpy sous np.
Cet exercice fait partie du cours
Analyse des paniers d’achat en Python
Instructions
- Calculez le support de l’antécédent et affectez-le à
supportA. - Calculez le support de NON conséquent.
- Calculez le support de l’antécédent et NON conséquent.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
def conviction(antecedent, consequent):
# Compute support for antecedent AND consequent
supportAC = np.logical_and(antecedent, consequent).mean()
# Compute support for antecedent
supportA = ____.____()
# Compute support for NOT consequent
supportnC = 1.0 - ____.____()
# Compute support for antecedent and NOT consequent
supportAnC = ____ - supportAC
# Return conviction
return supportA * supportnC / supportAnC