開始使用免費開始

MovieLens 統計摘要

我們把 groupBy() 方法再往前推進一些。

當你對 dataframe 使用 .groupBy() 之後,就能執行彙總函式(aggregate functions),例如 .sum().avg().min(),而且結果會依分組彙整。本練習會帶你一步步完成。minavg 已替你從 pyspark.sql.functions 匯入。

本練習屬於課程

使用 PySpark 打造推薦引擎

檢視課程

練習說明

  • movieId 分組,並使用 .count() 計算每部電影收到多少評分。接著呼叫 .select() 來選取下列指標:
    • min("count"):找出此資料集中任一電影的最小評分次數。第一個已替你示範。
    • avg("count"):計算每部電影的平均評分次數
  • 以相同方式操作,但這次改以 userId 分組,取得評分次數的 minavg

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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: ")
____.____("____").____().____(____("____")).____()
編輯並執行程式碼