EmpezarEmpieza gratis

Asignar identificadores enteros a películas

Hagamos lo mismo con las películas. Luego, unamos los nuevos IDs de usuario y de película en un único dataframe.

Este ejercicio forma parte del curso

Creación de motores de recomendación con PySpark

Ver curso

Instrucciones del ejercicio

  • Usa los métodos .select() y .distinct() para extraer todas las Movie únicas del dataframe ratings.
  • Reparte el dataframe movies a una sola partición usando coalesce().
  • Completa el código parcial proporcionado para asignar IDs enteros únicos a cada película. Nombra la nueva columna movieId y llama al método .persist() sobre el dataframe resultante.
  • Haz un join del dataframe ratings con el dataframe users y, después, con el dataframe movies. Llama movie_ratings al resultado.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# Extract the distinct movie id's
movies = ratings.select("____").distinct() 

# Repartition the data to have only one partition.
movies = movies.coalesce(____) 

# Create a new column of movieId integers. 
movies = movies.withColumn("____", monotonically_increasing_id()).____() 

# Join the ratings, users and movies dataframes
movie_ratings = ratings.join(____, "User", "left").join(____, "Movie", "left")
movie_ratings.show()
Editar y ejecutar código