Присвоєння цілих ідентифікаторів фільмам
Зробімо те саме для фільмів. Потім об'єднаймо нові ідентифікатори користувачів і фільмів в один датафрейм.
Ця вправа є частиною курсу
Створення рушіїв рекомендацій у PySpark
Інструкції до вправи
- Використайте методи
.select()і.distinct(), щоб вибрати всі унікальніMovieз датафреймуratings. - Перерозбийте датафрейм
moviesна один розділ за допомогоюcoalesce(). - Доповніть наданий частковий код, щоб присвоїти кожному фільму унікальні цілі ідентифікатори. Назвіть нову колонку
movieIdі викличте метод.persist()для отриманого датафрейму. - Об'єднайте датафрейм
ratingsз датафреймомusers, а потім з датафреймомmovies. Назвіть результатmovie_ratings.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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()