LoslegenKostenlos loslegen

Abfahrtszeit der Eimer

Tageszeitdaten sind eine Herausforderung bei Regressionsmodellen. Sie sind auch ein guter Kandidat für das Bucketing.

In dieser Lektion wirst du die Abflugzeiten von numerischen Werten zwischen 0 (entspricht 00:00) und 24 (entspricht 24:00) in gebündelte Werte umwandeln. Dann nimmst du diese gebinnten Werte und kodierst sie in einem Rutsch.

Diese Übung ist Teil des Kurses

Maschinelles Lernen mit PySpark

Kurs anzeigen

Anleitung zur Übung

  • Erstelle ein Bucketizer-Objekt mit Bin-Grenzen bei 0, 3, 6, …, 24, die den Zeiten 0:00, 03:00, 06:00, …, 24:00 entsprechen. Gib die Eingabespalte als depart und die Ausgabespalte als depart_bucket an.
  • Lege die Abfahrtszeiten in den Daten von flights ab. Zeige die ersten fünf Werte für depart und depart_bucket.
  • Erstelle ein One-Hot-Encoder-Objekt. Gib die Ausgabespalte als depart_dummy an.
  • Trainiere den Encoder mit den Daten und verwende ihn dann, um die Abfahrtszeiten in Dummy-Variablen umzuwandeln. Zeige die ersten fünf Werte für depart, depart_bucket und depart_dummy.

Interaktive Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

from pyspark.ml.feature import Bucketizer, OneHotEncoder

# Create buckets at 3 hour intervals through the day
buckets = ____(splits=[____], inputCol='____', outputCol='____')

# Bucket the departure times
bucketed = buckets.____(____)
bucketed.____('____', '____').____(____)

# Create a one-hot encoder
onehot = ____(inputCols=['____'], outputCols=['____'])

# One-hot encode the bucketed departure times
flights_onehot = ____.____(____).____(____)
flights_onehot.____('____', '____', '____').____(____)
Code bearbeiten und ausführen