Villkorsstyrd filtrering av numeriska fält
Att förstå sammanhanget för dina data är oerhört viktigt. Vi vill ta reda på vad ett normalt prisintervall för hus är. Låt oss filtrera bort extremvärden – hus som sålts till ett pris som avviker markant från genomsnittet. Här beräknar vi medelvärdet och standardavvikelsen och använder dem för att filtrera det närmast normalfördelade fältet log_SalesClosePrice.
Den här övningen är en del av kursen
Feature Engineering med PySpark
Övningsinstruktioner
- Importera
mean()ochstddev()frånpyspark.sql.functions. - Använd
agg()för att beräkna medelvärdet och standardavvikelsen för'log_SalesClosePrice'med de importerade funktionerna. - Skapa den övre och nedre gränsen genom att ta
mean_val+/- 3 gångerstddev_val. - Skapa ett
where()-filter för'log_SalesClosePrice'med hjälp av bådelow_boundochhi_bound.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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[____] > ____))