Encoder l'origine du vol
La colonne org dans les données de vols est une variable catégorielle qui indique l'aéroport de départ d'un vol.
- ORD — O'Hare International Airport (Chicago)
- SFO — San Francisco International Airport
- JFK — John F Kennedy International Airport (New York)
- LGA — La Guardia Airport (New York)
- SMF — Sacramento
- SJC — San Jose
- OGG — Kahului (Hawaï)
Évidemment, il ne s'agit que d'un petit sous-ensemble d'aéroports. Comme c'est une variable catégorielle, elle doit être encodée en « one-hot » avant de pouvoir être utilisée dans un modèle de régression.
Les données se trouvent dans une variable appelée flights. Vous avez déjà utilisé un indexeur de chaînes pour créer une colonne de valeurs indexées correspondant aux chaînes de org.
Il peut être utile de revoir les diapositives des leçons dans le panneau Diaporama à côté de l'IPython Shell.
Cette activité fait partie du cours
Machine Learning avec PySpark
Instructions de l’exercice
- Importez la classe d'encodage one-hot.
- Créez une instance de l'encodeur one-hot, en nommant la colonne d'entrée
org_idxet la colonne de sortieorg_dummy. - Appliquez l'encodeur one-hot aux données de vols.
- Générez un résumé de la correspondance entre les valeurs catégorielles et les variables factices binaires encodées. Ne conservez que les valeurs uniques et ordonnez par
org_idx.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Import the one hot encoder class
from pyspark.ml.____ import ____
# Create an instance of the one hot encoder
onehot = ____(inputCols=[____], outputCols=[____])
# Apply the one hot encoder to the flights data
onehot = onehot.____(____)
flights_onehot = onehot.____(____)
# Check the results
flights_onehot.____('org', 'org_idx', 'org_dummy').____().____('org_idx').show()