Začněte nyníZačněte zdarma

Souhrnné statistiky MovieLens

Pojďme metodu groupBy() využít trochu víc.

Poté, co metodu .groupBy() na dataframe použiješ, můžeš nad výsledkem spouštět agregační funkce jako .sum(), .avg() nebo .min() – a výsledky budou seskupeny podle zvolené skupiny. Toto cvičení tě provede tím, jak to funguje. Funkce min a avg jsou za tebe již naimportovány z pyspark.sql.functions.

Toto cvičení je součástí kurzu

Tvorba doporučovacích systémů s PySparkem

Zobrazit kurz

Pokyny k cvičení

  • Seskup data podle movieId a pomocí metody .count() zjisti, kolik hodnocení každý film obdržel. Poté zavolej metodu .select() a vyber následující metriky:
    • min("count") pro zjištění nejmenšího počtu hodnocení u jakéhokoli filmu v datasetu. Tento první příklad je již připraven za tebe.
    • avg("count") pro zjištění průměrného počtu hodnocení na film
  • Udělej totéž, ale tentokrát seskup data podle userId, abys získal/a hodnoty min a avg počtu hodnocení.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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: ")
____.____("____").____().____(____("____")).____()
Upravit a spustit kód