Kom igångKom igång gratis

Gruppera avgångstider

Tidsdata är en utmaning för regressionsmodeller, men passar utmärkt för gruppering (bucketing).

I den här övningen konverterar du avgångstider från numeriska värden mellan 0 (motsvarar 00:00) och 24 (motsvarar 24:00) till grupperade värden. Därefter one-hot-kodar du dessa grupperade värden.

Den här övningen är en del av kursen

Maskininlärning med PySpark

Visa kurs

Övningsinstruktioner

  • Skapa ett bucketizer-objekt med intervallgränser vid 0, 3, 6, …, 24, vilket motsvarar tiderna 0:00, 03:00, 06:00, …, 24:00. Ange depart som indatakolumn och depart_bucket som utdatakolumn.
  • Gruppera avgångstiderna i flights-datamängden. Visa de fem första värdena för depart och depart_bucket.
  • Skapa ett one-hot-encoder-objekt och ange depart_bucket som indatakolumn och depart_dummy som utdatakolumn.
  • Träna enkodaren på de grupperade data och använd den sedan för att omvandla dessa data till dummyvariabler. Visa de fem första värdena för depart, depart_bucket och depart_dummy.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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.____('____', '____', '____').____(____)
Redigera och kör kod