ПочатиПочніть безкоштовно

Застосування метрики Чжана

Засновниця стартапу з електронних книжок знову звернулася по консультацію. Вона надіслала вам список наборів товарів, які досліджує, і попросила визначити, чи містить хоч один із них несвязані між собою позиції. Після завершення вона просить додати використану метрику до стовпця в датафреймі rules, який уже доступний вам і наразі містить стовпці antecedents і consequents.

Набори товарів доступні як список списків під назвою itemsets. У кожному списку антецедент іде першим, а консеквент — другим. Також у вас є датафрейм books з попередніх вправ. Зауважте, що метрику Чжана вже визначено і вона доступна як zhang(). Додатково, pandas доступний як pd, а numpy — як np.

Ця вправа є частиною курсу

Маркет-баcкет аналіз у 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)
Редагувати та запускати код