Začněte nyníZačněte zdarma

Standardní škálování

Standardní škálování transformuje numerické příznaky tak, aby měly průměr 0 a rozptyl 1. V tomto cvičení provedeš standardní škálování pomocí StandardScaler() z knihovny sklearn. Nejprve vybereš pouze relevantní sloupce, na které škálování aplikuješ – a to kombinací filtrování numerických sloupců a znalosti struktury dat. Toto filtrování je již připraveno a probíhá prostřednictvím regulárních výrazů, které umožňují částečné shody řetězců. Poté použiješ fit_transform() k transformaci příslušných sloupců.

Modul pandas je dostupný jako pd a vzorový DataFrame je načtený jako df. Sloupec hour je již převeden na typ datetime a StandardScaler z sklearn.preprocessing je k dispozici.

Toto cvičení je součástí kurzu

Předpovídání CTR pomocí Machine Learning v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Vyber numerické sloupce a filtruj zadané filter_cols pomocí .select_dtypes().
  • Aplikuj standardní škálování na relevantní sloupce: nejprve vytvoř StandardScaler() a poté použij .fit_transform().
  • Vypiš rozptyl nově transformovaných sloupců pomocí .var().

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Get non-categorical columns, with a filter
num_df = df.____(include=['int', 'float'])
filter_cols = ['click', 'banner_pos', 'device_type',
               'search_engine_type', 'product_type', 'advertiser_type']
new_df = num_df[num_df.columns[~num_df.columns.____(filter_cols)]]
num_cols = new_df.____

# Transform columns using StandardScaler
scaler = ____()
df[num_cols] = scaler.____(df[____])

# Print mean and variance of transformed columns
print(df[num_cols].mean())
print(df[num_cols].____)
Upravit a spustit kód