Výpočet conviction pomocí funkce
Po úspěšném dokončení zkušebního projektu se zakladatelka e-knižního startupu rozhodne tě přijmout na mnohem větší zakázku. Ptá se, jestli dokážeš vypočítat conviction pro každý pár knih v datasetu goodreads-10k, aby podle toho mohla rozhodnout, které knihy umístit blíže u sebe na webu.
Práci přijmeš, ale záhy zjistíš, že potřebuješ efektivnější způsob výpočtu conviction, protože ho budeš muset provádět mnohokrát. Rozhodneš se napsat funkci, která ho vypočítá. Jako vstup přijme dva sloupce pandas DataFrame — jeden pro antecedent a jeden pro consequent — a vrátí metriku conviction. pandas je dostupný jako pd a numpy jako np.
Toto cvičení je součástí kurzu
Market Basket Analysis v Pythonu
Pokyny k cvičení
- Vypočítej support pro antecedent a výsledek přiřaď do proměnné
supportA. - Vypočítej support pro NOT consequent.
- Vypočítej support pro antecedent a NOT consequent.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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