LoslegenKostenlos loslegen

Transaktionsdaten One-Hot encodieren

Im gesamten Kurs verwenden wir eine einheitliche Pipeline, um Daten für die Market-Basket-Analyse vorzubereiten. Zuerst importierst du ein pandas-DataFrame und wählst die Spalte mit den Transaktionen aus. Jede Transaktion in dieser Spalte ist ein String mit mehreren Artikeln, getrennt durch Kommas. Als Nächstes verwendest du eine lambda-Funktion, um jeden Transaktions-String in eine Liste zu splitten und verwandelst die Spalte so in eine Liste von Listen.

In dieser Übung startest du mit der Liste von Listen aus dem Grocery-Datensatz, die dir als transactions vorliegt. Anschließend wandelst du transactions in ein One-Hot-encodiertes DataFrame um, in dem jede Spalte aus TRUE- und FALSE-Werten besteht, die angeben, ob ein Artikel in einer Transaktion enthalten war.

Diese Übung ist Teil des Kurses

Market Basket Analysis in Python

Kurs anzeigen

Anleitung zur Übung

  • Importiere aus mlxtend.preprocessing den TransactionEncoder.
  • Instanziiere einen Transaction Encoder und ermittle die eindeutigen Artikel in transactions.
  • One-Hot-encodiere transactions in einem Array und weise die Werte onehot zu.
  • Wandle das Array in ein pandas-DataFrame um und verwende die Artikelnamen als Spaltenüberschriften.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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)
Code bearbeiten und ausführen