ComeçarComece de graça

Filtrando campos numéricos condicionalmente

Mais uma vez, entender o contexto dos seus dados é fundamental. Queremos entender qual é a faixa normal de preços de venda das casas. Vamos garantir que você exclua quaisquer outliers, ou seja, casas que foram vendidas por muito mais ou muito menos do que a média. Aqui, vamos calcular a média e o desvio padrão e usá-los para filtrar o campo quase normal log_SalesClosePrice.

Este exercício faz parte do curso

Feature Engineering com PySpark

Ver curso

Instruções do exercício

  • Importe mean() e stddev() de pyspark.sql.functions.
  • Use agg() para calcular a média e o desvio padrão de 'log_SalesClosePrice' com as funções importadas.
  • Crie os limites superior e inferior usando mean_val +/- 3 vezes stddev_val.
  • Crie um filtro where() para 'log_SalesClosePrice' usando tanto low_bound quanto hi_bound.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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[____] > ____))
Editar e executar o código