Kalkış saatini bölütleme (bucketing)
Günün saatine ait veriler regresyon modelleri için zorluk yaratır. Aynı zamanda bucketing için çok iyi bir adaydır.
Bu derste, uçuş kalkış saatlerini 0 (00:00’a karşılık gelir) ile 24 (24:00’a karşılık gelir) arasındaki sayısal değerlerden, bölütlenmiş değerlere dönüştüreceksin. Ardından bu bölütlenmiş değerleri one-hot encode edeceksin.
Bu egzersiz
PySpark ile Machine Learning
kursunun bir parçasıdırEgzersiz talimatları
- 0, 3, 6, …, 24 sınırlarında (0:00, 03:00, 06:00, …, 24:00 saatlerine karşılık gelen) bir bucketizer nesnesi oluştur. Girdi sütununu
depart, çıktı sütununudepart_bucketolarak belirt. flightsverisindeki kalkış saatlerini bölütle.departvedepart_bucketiçin ilk beş değeri göster.depart_bucketgiriş sütunu vedepart_dummyçıkış sütunu olacak şekilde bir one-hot encoder nesnesi oluştur.- Encoder’ı bölütlenmiş veriye fit et ve ardından bu veriyi kukla (dummy) değişkenlere dönüştürmek için kullan.
depart,depart_bucketvedepart_dummyiçin ilk beş değeri göster.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
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.____('____', '____', '____').____(____)