Применение метрики Чжана
Основательница стартапа по продаже электронных книг снова обратилась за консультацией. Она прислала список наборов элементов, которые хочет проанализировать, и попросила определить, содержат ли некоторые из них несвязанные элементы. По завершении анализа она просит добавить использованную метрику в отдельный столбец DataFrame rules, который уже доступен вам и содержит столбцы antecedents и consequents.
Наборы элементов представлены в виде списка списков под названием itemsets. В каждом внутреннем списке антецедент стоит первым, консеквент — вторым. Также доступен DataFrame books из предыдущих упражнений. Обратите внимание: метрика Чжана уже определена и доступна как zhang(). Кроме того, доступны библиотеки pandas (как pd) и numpy (как np).
Это упражнение является частью курса
Анализ рыночных корзин на Python
Инструкции к упражнению
- Переберите каждый набор элементов в
itemsetsв цикле. - Извлеките столбцы антецедента и консеквента из
booksдля каждого набора. - Завершите выражение и добавьте результат в список
zhangs_metric. - Выведите метрику для каждого набора элементов.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# 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)