Appliquer la mesure de Zhang
La fondatrice de la start-up d’e-books est revenue pour une mission de conseil supplémentaire. Elle vous a envoyé une liste d’itemsets qu’elle étudie et vous demande de déterminer si l’un d’eux contient des articles dissociés. Une fois terminé, elle souhaite que vous ajoutiez la mesure que vous utilisez dans une colonne du DataFrame rules, qui est à votre disposition et contient actuellement les colonnes antecedents et consequents.
Les itemsets sont disponibles sous forme d’une liste de listes appelée itemsets. Chaque liste contient d’abord l’antécédent, puis le conséquent. Vous avez aussi accès au DataFrame books des exercices précédents. Notez que la mesure de Zhang a été définie pour vous et est disponible sous le nom zhang(). De plus, pandas est disponible sous pd et numpy sous np.
Cet exercice fait partie du cours
Analyse des paniers d’achat en Python
Instructions
- Itérez sur chaque itemset dans
itemsets. - Extrayez les colonnes d’antécédent et de conséquent de
bookspour chaque itemset. - Complétez l’instruction et ajoutez-la à la liste
zhangs_metric. - Affichez la mesure pour chaque itemset.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Define an empty list for Zhang's metric
zhangs_metric = []
# Loop over lists in itemsets
for itemset in ____:
# Extract the antecedent and consequent columns
antecedent = books[itemset[0]]
consequent = ____[itemset[1]]
# Complete Zhang's metric and append it to the list
zhangs_metric.append(zhang(____, ____))
# Print results
rules['zhang'] = zhangs_metric
print(rules)