开始使用免费开始使用

按条件筛选数值字段

再次强调,理解数据的业务背景非常重要。我们想要了解房屋成交价的正常范围。请确保排除任何远高于或低于平均水平的离群房屋。在此,我们将计算均值和标准差,并用它们来筛选近似正态的字段 log_SalesClosePrice

本练习是课程的一部分

使用 PySpark 进行特征工程

查看课程

练习说明

  • pyspark.sql.functions 导入 mean()stddev()
  • 使用 agg() 结合已导入的函数,计算 'log_SalesClosePrice' 的均值和标准差。
  • 通过 mean_val +/- 3 倍的 stddev_val 来创建上下界。
  • 'log_SalesClosePrice' 创建一个 where() 过滤条件,同时使用 low_boundhi_bound

交互式实操练习

通过完成这段示例代码来试试这个练习。

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[____] > ____))
编辑并运行代码