開始使用免費開始

PySpark 的 groupby

你已經看過如何使用 dask 框架及其 DataFrame 抽象來進行計算。不過,如同影片所示,在大數據領域,Spark 可能是更受歡迎的資料處理選擇。

在這個練習中,你會使用 PySpark 套件來操作一個 Spark DataFrame。資料與先前練習相同:1896 到 2016 年間參與奧運項目的選手。

Spark DataFrame athlete_events_spark 已經在你的工作空間中可用。

你在本練習會用到的方法有:

  • .printSchema():協助列印 Spark DataFrame 的結構(schema)。
  • .groupBy():進行彙總時的分組敘述。
  • .mean():對每個群組計算平均值。
  • .show():顯示結果。

本練習屬於課程

Data Engineering 入門

檢視課程

練習說明

  • 找出 athlete_events_spark 的型別。
  • 檢視 athlete_events_spark 的結構(schema)。
  • 列印依年份分組後,奧運選手的平均年齡。注意,Spark 此時其實尚未執行任何計算。這種行為稱為「延遲求值」(lazy evaluation)。
  • 以上一步的結果為基礎,對結果呼叫 .show() 來計算並顯示平均年齡。

動手互動練習

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

# Print the type of athlete_events_spark
print(____(athlete_events_spark))

# Print the schema of athlete_events_spark
print(athlete_events_spark.____())

# Group by the Year, and find the mean Age
print(athlete_events_spark.____('Year').mean(____))

# Group by the Year, and find the mean Age
print(athlete_events_spark.____('Year').mean(____).____())
編輯並執行程式碼