Gán id số nguyên cho các bộ phim
Hãy làm điều tương tự cho các bộ phim. Sau đó, nối (join) các ID người dùng mới và ID phim vào cùng một dataframe.
Bài tập này là một phần của khóa học
Xây dựng Recommendation Engine với PySpark
Hướng dẫn bài tập
- Dùng các phương thức
.select()và.distinct()để trích tất cảMovieduy nhất từ dataframeratings. - Gộp lại dataframe
moviesvề một partition bằngcoalesce(). - Hoàn thiện đoạn mã cho sẵn để gán ID số nguyên duy nhất cho từng phim. Đặt tên cột mới là
movieIdvà gọi phương thức.persist()trên dataframe kết quả. - Join dataframe
ratingsvới dataframeusers, rồi tiếp tục join với dataframemovies. Gọi kết quả làmovie_ratings.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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()