Definiowanie funkcji agregującej
Sprzedawca jest zaskoczony wysokim udziałem produktów z kategorii „szyldy" w swoim asortymencie i postanawia przeprowadzić głębszą agregację dla różnych kategorii, aby lepiej zbadać dane. Zadanie wydaje ci się proste, ale sprzedawca do tej pory nie miał możliwości wykonania nawet podstawowej analizy opisowej swoich transakcji i produktów.
Sprzedawca prosi cię o przeprowadzenie agregacji dla kategorii candles, bags i boxes. Aby uprościć zadanie, postanawiasz napisać funkcję, która przyjmie ciąg znaków z nazwą kategorii produktu i zwróci ramkę danych wskazującą, czy każda transakcja zawiera produkty z tej kategorii. Biblioteka pandas została już zaimportowana jako pd, a dane w formacie kodowania one-hot są dostępne jako onehot.
To ćwiczenie jest częścią kursu
Analiza koszyka zakupowego w Pythonie
Instrukcje do ćwiczenia
- Uzupełnij wyrażenie listowe, które wyodrębnia podzbiór nagłówków kolumn.
- Wybierz kolumny odpowiadające produktom, które chcesz zagregować.
- Wykonaj agregację za pomocą funkcji
aggregate()dla toreb, pudełek i świec, używając ciągów znakówbag,boxicandle.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
def aggregate(item):
# Select the column headers for sign items in onehot
item_headers = [i for i in ____.columns if i.lower().find(item)>=0]
# Select columns of sign items
item_columns = onehot[____]
# Return category of aggregated items
return item_columns.sum(axis = 1) >= 1.0
# Aggregate items for the bags, boxes, and candles categories
bags = aggregate('bag')
boxes = aggregate('____')
candles = ____