Vlastní procentuální škálování
Ve slidech jsme ukázali, jak škálovat data v rozsahu od 0 do 1. Někdy ale může být užitečné zvolit jiný rozsah – třeba pro potřeby modelování nebo vizualizace.
Toto cvičení je součástí kurzu
Feature Engineering with PySpark
Pokyny k cvičení
- Zjisti maximální a minimální hodnotu sloupce
DAYSONMARKETa ulož je do proměnnýchmax_daysamin_days– nezapomeň použítcollect()naagg(). - Pomocí
withColumn()vytvoř nový sloupec s názvem 'percentagescaleddays' vycházející ze sloupceDAYSONMARKET. - Sloupec
percentage_scaled_daysby měl obsahovat celá čísla v rozsahu od 0 do 100 – použijround()pro zaokrouhlení na celá čísla. - Vypiš
max()amin()nového sloupcepercentage_scaled_days.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Define max and min values and collect them
max_days = df.____({____: ____}).____()[0][0]
min_days = df.____({____: ____}).____()[0][0]
# Create a new column based off the scaled data
df = df.____(____,
____((df[____] - min_days) / (max_days - min_days)) * ____)
# Calc max and min for new column
print(df.____({____: ____}).____())
print(df.____({____: ____}).____())