Origin van vlucht encoden
De kolom org in de vluchtgegevens is een categorische variabele met de luchthaven waarvandaan een vlucht vertrekt.
- 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ï)
Dit is natuurlijk maar een kleine subset van luchthavens. Toch moet deze categorische variabele one-hot worden geëncodet voordat je haar in een regressiemodel kunt gebruiken.
De gegevens staan in een variabele flights. Je hebt al een string indexer gebruikt om een kolom met geïndexeerde waarden te maken die overeenkomen met de strings in org.
Het kan handig zijn om de dia's uit de lessen in het paneel Dia's naast de IPython Shell nog eens door te nemen.
Deze oefening maakt deel uit van de cursus
Machine Learning met PySpark
Oefeninstructies
- Importeer de one-hot encoder-klasse.
- Maak een one-hot encoder-instantie, met als inputkolom
org_idxen als outputkolomorg_dummy. - Pas de one-hot encoder toe op de vluchtgegevens.
- Genereer een overzicht van de mapping van categorische waarden naar binair geëncodeerde dummyvariabelen. Neem alleen unieke waarden op en sorteer op
org_idx.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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()