Obliczanie przekonania za pomocą funkcji
Po pomyślnym zakończeniu projektu próbnego założycielka startupu z e-bookami decyduje się zatrudnić cię do znacznie większego zadania. Pyta, czy jesteś w stanie obliczyć przekonanie (conviction) dla każdej pary książek w zbiorze danych goodreads-10k, aby mogła wykorzystać te informacje do decyzji o rozmieszczeniu książek na stronie.
Przyjmujesz zlecenie, ale szybko zdajesz sobie sprawę, że potrzebujesz wydajniejszego sposobu obliczania przekonania – będziesz to robić wielokrotnie. Postanawiasz napisać funkcję, która je oblicza. Przyjmie ona dwie kolumny ramki danych pandas jako dane wejściowe – jedną dla poprzednika i jedną dla następnika – i zwróci metrykę przekonania. Pamiętaj, że pandas jest dostępny jako pd, a numpy jako np.
To ćwiczenie jest częścią kursu
Analiza koszyka zakupowego w Pythonie
Instrukcje do ćwiczenia
- Oblicz wsparcie dla poprzednika i przypisz je do zmiennej
supportA. - Oblicz wsparcie dla NOT następnika.
- Oblicz wsparcie dla poprzednika i NOT następnika.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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