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
Instructions de l’exercice
- Utilisez les méthodes
.select()et.distinct()pour extraire toutes les valeurs uniques deMovieà partir du dataframeratings. - Répartissez le dataframe
moviesen une seule partition aveccoalesce(). - Complétez le code partiel fourni pour attribuer des ID entiers uniques à chaque film. Nommez la nouvelle colonne
movieIdet appelez la méthode.persist()sur le dataframe résultant. - Faites un
joindu dataframeratingsavec le dataframeusers, puis avec le dataframemovies. Nommez le résultatmovie_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()