Zacznij terazZacznij za darmo

Kodowanie one-hot danych transakcyjnych

W całym kursie będziemy korzystać ze standardowego potoku przetwarzania danych na potrzeby analizy koszyka zakupowego. Pierwszym krokiem jest zaimportowanie DataFrame z biblioteki pandas i wybranie kolumny zawierającej transakcje. Każda transakcja w tej kolumnie to ciąg tekstowy składający się z elementów oddzielonych przecinkami. Następnie używamy funkcji lambda, aby podzielić każdy taki ciąg na listę – w ten sposób kolumna zamienia się w listę list.

W tym ćwiczeniu zaczniesz od listy list z zestawu danych sklepu spożywczego, dostępnej jako transactions. Następnie przekształcisz transactions w zakodowany metodą one-hot DataFrame, w którym każda kolumna zawiera wartości TRUE i FALSE wskazujące, czy dany produkt znalazł się w transakcji.

To ćwiczenie jest częścią kursu

Analiza koszyka zakupowego w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Z modułu mlxtend.preprocessing zaimportuj TransactionEncoder.
  • Utwórz instancję enkodera transakcji i zidentyfikuj unikalne elementy w transactions.
  • Zakoduj transactions metodą one-hot w postaci tablicy i przypisz jej wartości do onehot.
  • Przekształć tablicę w DataFrame biblioteki pandas, używając nazw elementów jako nagłówków kolumn.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Import the transaction encoder function from mlxtend
from ____.____ import ____
import pandas as pd

# Instantiate transaction encoder and identify unique items in transactions
encoder = TransactionEncoder().____(____)

# One-hot encode transactions
onehot = encoder.____(transactions)

# Convert one-hot encoded data to DataFrame
onehot = pd.DataFrame(____, columns = encoder.columns_)

# Print the one-hot encoded transaction dataset
print(onehot)
Edytuj i uruchom kod