Podmíněné filtrování numerických polí
Pochopení kontextu dat je naprosto klíčové. Chceme zjistit, v jakém cenovém rozsahu se běžně prodávají domy. Vyloučíme proto odlehlé hodnoty – domy, jejichž prodejní cena se výrazně liší od průměru. Vypočítáme průměr a směrodatnou odchylku a použijeme je k filtrování pole log_SalesClosePrice, které se přibližuje normálnímu rozdělení.
Toto cvičení je součástí kurzu
Feature Engineering with PySpark
Pokyny k cvičení
- Importuj
mean()astddev()zpyspark.sql.functions. - Pomocí
agg()vypočítej průměr a směrodatnou odchylku pro'log_SalesClosePrice's použitím importovaných funkcí. - Vytvoř horní a dolní hranici tak, že od
mean_valpřičteš nebo odečteš 3násobekstddev_val. - Pomocí
where()vyfiltruj záznamy z'log_SalesClosePrice'na základě hodnotlow_boundahi_bound.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
from ____ import ____, ____
# Calculate values used for outlier filtering
mean_val = df.____({____: ____}).collect()[0][0]
stddev_val = df.____({____: ____}).collect()[0][0]
# Create three standard deviation (μ ± 3σ) lower and upper bounds for data
low_bound = ____ - (3 * ____)
hi_bound = ____ + (3 * ____)
# Filter the data to fit between the lower and upper bounds
df = df.____((df[____] < ____) ____ (df[____] > ____))