Zacznij terazZacznij za darmo

Kodowanie lotniska wylotu

Kolumna org w zbiorze danych o lotach to zmienna kategoryczna określająca lotnisko odlotu.

  • ORD — O'Hare International Airport (Chicago)
  • SFO — San Francisco International Airport
  • JFK — John F Kennedy International Airport (Nowy Jork)
  • LGA — La Guardia Airport (Nowy Jork)
  • SMF — Sacramento
  • SJC — San Jose
  • OGG — Kahului (Hawaje)

To oczywiście tylko niewielki podzbiór lotnisk. Ponieważ jednak jest to zmienna kategoryczna, przed użyciem jej w modelu regresji trzeba ją zakodować metodą one-hot encoding.

Dane znajdują się w zmiennej flights. Indeksator łańcuchów (string indexer) został już zastosowany i utworzył kolumnę z indeksami odpowiadającymi wartościom tekstowym w kolumnie org.

Warto przejrzeć slajdy z lekcji dostępne w panelu Slajdy obok powłoki IPython.

To ćwiczenie jest częścią kursu

Uczenie maszynowe z PySpark

Zobacz kurs

Instrukcje do ćwiczenia

  • Zaimportuj klasę kodera one-hot.
  • Utwórz instancję kodera one-hot, podając org_idx jako kolumnę wejściową i org_dummy jako kolumnę wyjściową.
  • Zastosuj koder one-hot do danych o lotach.
  • Wygeneruj zestawienie mapowania wartości kategorycznych na binarne zmienne zastępcze (dummy variables). Uwzględnij tylko unikalne wartości i posortuj je według org_idx.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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()
Edytuj i uruchom kod