1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Feature Engineering with PySpark

Connected

cvičení

Jednoduché zpracování chybějících a kategorických hodnot

Random Forest Regression je dostatečně robustní na to, abychom mohli přeskočit mnohé časově náročné kroky přípravy dat. Některé implementace Random Forestu si s chybějícími a kategorickými hodnotami poradí automaticky, PySpark to za nás ale neudělá. Matematika zůstává stejná, takže si vystačíme s jednoduchými náhradami hodnot.

Pro chybějící hodnoty použijeme -1, protože naše data jsou striktně kladná. Random forest se na tuto hodnotu rozdělí a bude s ní pracovat odlišně než s ostatními hodnotami ve stejném příznaku.

Kategorické hodnoty jednoduše namapujeme na čísla – random forest se s nimi opět vhodně vypořádá pomocí větvení. V tomto příkladu si oprášíme pipelines z kurzu Introduction to PySpark, abychom kód napsali stručněji. Cvičení začíná zobrazením dtypes sloupců v dataframu – porovnej je s výsledky na konci tohoto cvičení.

POZNÁMKA: Pipeline a StringIndexer jsou již naimportovány. K dispozici je také seznam categorical_cols.

Pokyny

100 XP
  • Nahraď hodnoty ve sloupcích WALKSCORE a BIKESCORE hodnotou -1 pomocí fillna() a parametru subset.
  • Vytvoř seznam StringIndexerů pomocí list comprehension – iteruj přes každý sloupec v categorical_cols.
  • Aplikuj fit() a transform() na pipeline indexer_pipeline.
  • Odstraň categorical_cols pomocí drop(), protože je už nepotřebujeme. Zkontroluj výsledné datové typy pomocí dtypes.