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

Обчислення conviction за допомогою функції

Після успішного завершення пілотного проєкту засновниця стартапу з електронних книжок вирішує найняти вас на значно більший проєкт. Вона запитує, чи зможете ви обчислити conviction для кожної пари книжок у наборі даних goodreads-10k, щоб використати це для вирішення, які книжки розміщувати ближче одна до одної на сайті.

Ви погоджуєтеся, але розумієте, що потрібен ефективніший спосіб обчислення conviction, адже робити це доведеться багато разів. Ви вирішуєте написати функцію, що його обчислює. Вона прийматиме два стовпці датафрейму pandas як вхідні дані — один як антецедент, інший як консеквент — і повертатиме метрику conviction. Зверніть увагу: pandas доступний як pd, а numpy — як np.

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

Маркет-баcкет аналіз у Python

Переглянути курс

Інструкції до вправи

  • Обчисліть підтримку для антецедента і присвойте її до supportA.
  • Обчисліть підтримку для NOT консеквента.
  • Обчисліть підтримку для антецедента і NOT консеквента.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

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
Редагувати та запускати код