CommencezCommencez gratuitement

Attribuer des identifiants entiers aux films

Faisons la même chose pour les films. Ensuite, joignons les nouveaux ID d'utilisateurs et les ID de films dans un seul dataframe.

Cette activité fait partie du cours

Créer des moteurs de recommandation avec PySpark

Voir le cours

Instructions de l’exercice

  • Utilisez les méthodes .select() et .distinct() pour extraire toutes les valeurs uniques de Movie à partir du dataframe ratings.
  • Répartissez le dataframe movies en une seule partition avec coalesce().
  • Complétez le code partiel fourni pour attribuer des ID entiers uniques à chaque film. Nommez la nouvelle colonne movieId et appelez la méthode .persist() sur le dataframe résultant.
  • Faites un join du dataframe ratings avec le dataframe users, puis avec le dataframe movies. Nommez le résultat movie_ratings.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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()
Modifier et exécuter le code