Aan de slagBegin gratis

Gehele-ID's toekennen aan films

Laten we hetzelfde doen voor de films. Voeg daarna de nieuwe user-ID's en movie-ID's samen in één dataframe.

Deze oefening maakt deel uit van de cursus

Aanbevelingssystemen bouwen met PySpark

Bekijk cursus

Oefeninstructies

  • Gebruik de methoden .select() en .distinct() om alle unieke Movies uit het ratings-dataframe te halen.
  • Herpartitioneer het movies-dataframe naar één partitie met coalesce().
  • Maak de gegeven gedeeltelijke code af om unieke gehele ID's aan elke film toe te kennen. Noem de nieuwe kolom movieId en roep de methode .persist() aan op het resulterende dataframe.
  • Voer een join uit van het ratings-dataframe met het users-dataframe en vervolgens met het movies-dataframe. Noem het resultaat movie_ratings.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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()
Code bewerken en uitvoeren