Inizia subitoInizia gratis

Assegnare ID interi ai film

Facciamo la stessa cosa per i film. Poi uniamo i nuovi ID utente e i nuovi ID film in un unico dataframe.

Questo esercizio fa parte del corso

Costruire motori di raccomandazione con PySpark

Visualizza corso

Istruzioni dell'esercizio

  • Usa i metodi .select() e .distinct() per estrarre tutti i Movie unici dal dataframe ratings.
  • Ripartiziona il dataframe movies in un'unica partizione usando coalesce().
  • Completa il codice parziale fornito per assegnare ID interi univoci a ciascun film. Chiama la nuova colonna movieId e invoca il metodo .persist() sul dataframe risultante.
  • Esegui il join del dataframe ratings con il dataframe users e poi con il dataframe movies. Chiama il risultato movie_ratings.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# 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()
Modifica ed esegui il codice