Aan de slagBegin gratis

Getalsvelden voorwaardelijk filteren

Ook hier is het begrijpen van de context van je data ontzettend belangrijk. We willen weten binnen welke normale bandbreedte huizen worden verkocht. Laten we alle uitschieters uitsluiten die voor aanzienlijk meer of minder dan het gemiddelde zijn verkocht. We berekenen hier het gemiddelde en de standaarddeviatie en gebruiken die om het bijna-normale veld log_SalesClosePrice te filteren.

Deze oefening maakt deel uit van de cursus

Feature Engineering met PySpark

Bekijk cursus

Oefeninstructies

  • Importeer mean() en stddev() uit pyspark.sql.functions.
  • Gebruik agg() om met de geïmporteerde functies het gemiddelde en de standaarddeviatie voor 'log_SalesClosePrice' te berekenen.
  • Maak de boven- en ondergrens door mean_val +/- 3 keer stddev_val te nemen.
  • Maak een where()-filter voor 'log_SalesClosePrice' met zowel low_bound als hi_bound.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

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[____] > ____))
Code bewerken en uitvoeren