Calculer la conviction avec une fonction
Après la réussite de son projet pilote, la fondatrice de la jeune pousse d'ebooks décide de vous embaucher pour un projet beaucoup plus ambitieux. Elle vous demande si vous pouvez calculer la conviction pour chaque paire de livres du jeu de données goodreads-10k, afin d'utiliser cette information pour rapprocher certains livres sur le site Web.
Vous acceptez le mandat, mais vous réalisez qu'il vous faut une méthode plus efficace pour calculer la conviction, puisque 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.
Cette activité fait partie du cours
Analyse des paniers d'achat en Python
Instructions de l’exercice
- Calculez le support pour l'antécédent et assignez-le à
supportA. - Calculez le support pour NON conséquent.
- Calculez le support pour antécédent et NON conséquent.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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