ComenzarEmpieza gratis

Agrupación por intervalos de la hora de salida

Los datos de hora del día suponen un reto para los modelos de regresión. También son un gran candidato para agrupar por intervalos.

En esta lección convertirás las horas de salida de los vuelos de valores numéricos entre 0 (correspondiente a 00:00) y 24 (correspondiente a 24:00) a valores en intervalos. Después tomarás esos valores por intervalos y los codificarás con one-hot.

Este ejercicio forma parte del curso

Machine learning con PySpark

Ver curso

Instrucciones del ejercicio

  • Crea un objeto bucketizer con límites de los intervalos en 0, 3, 6, …, 24, que corresponden a las horas 0:00, 03:00, 06:00, …, 24:00. Especifica la columna de entrada como depart y la columna de salida como depart_bucket.
  • Agrupa por intervalos las horas de salida en los datos de flights. Muestra los cinco primeros valores de depart y depart_bucket.
  • Crea un objeto de codificación one-hot, especificando depart_bucket como columna de entrada y depart_dummy como columna de salida.
  • Ajusta el codificador a los datos agrupados y luego úsalo para transformar estos datos a variables dummy. Muestra los cinco primeros valores de depart, depart_bucket y depart_dummy.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

from pyspark.ml.feature import Bucketizer, OneHotEncoder

# Create buckets at 3 hour intervals through the day
buckets = ____(splits=[____], inputCol='____', outputCol='____')

# Bucket the departure times
bucketed = buckets.____(____)
bucketed.____('____', '____').____(____)

# Create a one-hot encoder
onehot = ____(inputCols=['____'], outputCols=['____'])

# One-hot encode the bucketed departure times
flights_onehot = ____.____(____).____(____)
flights_onehot.____('____', '____', '____').____(____)
Editar y ejecutar código