EmpezarEmpieza gratis

Filtrar campos numéricos de forma condicional

De nuevo, entender el contexto de tus datos es fundamental. Queremos saber cuál es el rango normal de precios de venta de las viviendas. Asegurémonos de excluir cualquier vivienda atípica que se haya vendido por bastante más o menos que la media. Aquí calcularemos la media y la desviación estándar y las usaremos para filtrar el campo casi normal log_SalesClosePrice.

Este ejercicio forma parte del curso

Ingeniería de características con PySpark

Ver curso

Instrucciones del ejercicio

  • Importa mean() y stddev() desde pyspark.sql.functions.
  • Usa agg() para calcular la media y la desviación estándar de 'log_SalesClosePrice' con las funciones importadas.
  • Crea los límites superior e inferior tomando mean_val +/- 3 veces stddev_val.
  • Crea un filtro where() para 'log_SalesClosePrice' usando tanto low_bound como hi_bound.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

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 y ejecutar código