ÎncepețiÎncepe gratuit

Statistici sumare MovieLens

Să explorăm mai în detaliu metoda groupBy().

Odată ce ai aplicat metoda .groupBy() pe un dataframe, poți rula funcții de agregare precum .sum(), .avg(), .min() și să obții rezultatele grupate. Acest exercițiu te va ghida pas cu pas prin acest proces. Funcțiile min și avg au fost deja importate din pyspark.sql.functions.

Acest exercițiu face parte din cursul

Construiește motoare de recomandare cu PySpark

Vezi cursul

Instrucțiuni pentru exercițiu

  • Grupează datele după movieId și folosește metoda .count() pentru a calcula câte evaluări a primit fiecare film. Apoi, apelează metoda .select() pentru a selecta următoarele metrici:
    • min("count") – pentru a obține cel mai mic număr de evaluări primit de orice film din setul de date. Acest prim pas îți este oferit ca exemplu.
    • avg("count") – pentru a obține numărul mediu de evaluări per film
  • Repetă același lucru, dar de această dată grupează după userId pentru a obține numărul min și avg de evaluări.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Min num ratings for movies
print("Movie with the fewest ratings: ")
ratings.groupBy("movieId").count().select(min("count")).show()

# Avg num ratings per movie
print("Avg num ratings per movie: ")
____.groupBy("____").count().____(avg("____")).____()

# Min num ratings for user
print("User with the fewest ratings: ")
ratings.____("userId").____().select(____("____")).____()

# Avg num ratings per users
print("Avg num ratings per user: ")
____.____("____").____().____(____("____")).____()
Editează și rulează codul