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

Connected

cvičení

Odstranění sloupců s nízkým počtem pozorování

Po rozsáhlém feature engineeringu je dobré udělat krok zpět a podívat se, co všechno jsi vytvořil/a. Pokud jsi na kategorické příznaky aplikoval/a automatizované techniky, jako je explodování nebo OneHot Encoding, může se stát, že máš teď stovky nových binárních příznaků. Téma výběru příznaků by vydalo na celý samostatný kurz, ale existují rychlé kroky, jak zredukovat dimenzionalitu datové sady.

V tomto cvičení odstraníme sloupce, které mají méně než 30 pozorování. Třicet je běžně uznávaná minimální hodnota pro statistickou významnost. Pokud je pozorování méně, vztahy v datech vedou k přetrénování modelu, protože jde o pouhou náhodu!

POZNÁMKA: Data jsou dostupná v dataframu df.

Pokyny

100 XP
  • Pomocí připraveného cyklu for, který prochází seznam binárních sloupců, vypočítej sum hodnot v daném sloupci pomocí funkce agg. Použij collect(), aby se výpočet provedl okamžitě, a výsledek ulož do obs_count.
  • Porovnej obs_count s obs_threshold — příkaz if má být pravdivý, pokud je obs_count menší nebo rovno obs_threshold.
  • Odstraň sloupce přidané do seznamu cols_to_remove pomocí drop(). Vzpomeň si, že * umožňuje rozbalit seznam.
  • Vypiš počáteční a koncový tvar PySpark dataframů — pro počet záznamů použij count() a pro počet sloupců len() na df.columns nebo new_df.columns.