Sayısal alanları koşullu filtreleme
Verinin bağlamını anlamak yine son derece önemli. Evlerin normalde hangi aralıkta satıldığını görmek istiyoruz. Ortalamadan belirgin şekilde daha yüksek ya da daha düşük fiyata satılan aykırı evleri dışarıda bıraktığından emin olalım. Burada ortalama ve standart sapmayı hesaplayacak ve bunları, yaklaşık normal dağılan log_SalesClosePrice alanını filtrelemek için kullanacağız.
Bu egzersiz, kursun bir parçasıdır
PySpark ile Özellik Mühendisliği
Egzersiz talimatları
pyspark.sql.functionsiçindenmean()vestddev()fonksiyonlarını içe aktar.- İçe aktardığın fonksiyonlarla
'log_SalesClosePrice'için ortalama ve standart sapmayı hesaplamak üzereagg()kullan. - Üst ve alt sınırları,
mean_val+/-stddev_valin 3 katını alarak oluştur. - Hem
low_boundhem dehi_boundkullanarak'log_SalesClosePrice'için birwhere()filtresi oluştur.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
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[____] > ____))