MulaiMulai sekarang secara gratis

Pengelompokan waktu keberangkatan

Data waktu dalam sehari merupakan tantangan bagi model regresi. Data tersebut juga sangat cocok untuk dikelompokkan (bucketing).

Dalam pelajaran ini, Anda akan mengonversi waktu keberangkatan penerbangan dari nilai numerik antara 0 (sesuai dengan 00.00) hingga 24 (sesuai dengan 24.00) menjadi nilai dalam keranjang (binned). Selanjutnya, Anda akan melakukan one-hot encoding pada nilai binned tersebut.

Latihan ini adalah bagian dari kursus

Machine Learning dengan PySpark

Lihat Kursus

Petunjuk latihan

  • Buat objek bucketizer dengan batas bin pada 0, 3, 6, …, 24 yang sesuai dengan waktu 00.00, 03.00, 06.00, …, 24.00. Tentukan kolom masukan sebagai depart dan kolom keluaran sebagai depart_bucket.
  • Kelompokkan waktu keberangkatan pada data flights. Tampilkan lima nilai pertama untuk depart dan depart_bucket.
  • Buat objek one-hot encoder, dengan depart_bucket sebagai kolom masukan dan depart_dummy sebagai kolom keluaran.
  • Fit encoder pada data yang telah dikelompokkan, lalu gunakan untuk mentransformasikan data ini menjadi variabel dummy. Tampilkan lima nilai pertama untuk depart, depart_bucket, dan depart_dummy.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

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.____('____', '____', '____').____(____)
Edit dan Jalankan Kode