CommencezCommencez gratuitement

Regroupement de l'heure de départ en tranches

Les données d'heure de la journée posent un défi pour les modèles de régression. Elles se prêtent aussi très bien au regroupement en tranches.

Dans cette leçon, vous convertirez les heures de départ des vols, qui sont des valeurs numériques entre 0 (correspondant à 00 h 00) et 24 (correspondant à 24 h 00), en valeurs regroupées en tranches. Vous prendrez ensuite ces valeurs groupées et les coderez en one-hot.

Cette activité fait partie du cours

Machine Learning avec PySpark

Voir le cours

Instructions de l’exercice

  • Créez un objet bucketizer avec des bornes de tranches à 0, 3, 6, …, 24, qui correspondent aux heures 0 h 00, 3 h 00, 6 h 00, …, 24 h 00. Spécifiez la colonne d'entrée depart et la colonne de sortie depart_bucket.
  • Regroupez les heures de départ dans les données flights. Affichez les cinq premières valeurs de depart et depart_bucket.
  • Créez un objet d'encodage one-hot, en spécifiant depart_bucket comme colonne d'entrée et depart_dummy comme colonne de sortie.
  • Ajustez (fit) l'encodeur aux données regroupées, puis utilisez-le pour transformer ces données en variables muettes (dummy). Affichez les cinq premières valeurs de depart, depart_bucket et depart_dummy.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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.____('____', '____', '____').____(____)
Modifier et exécuter le code