เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การจัดกลุ่มและการรวมข้อมูล II

นอกจากเมธอดของ GroupedData ที่ได้เรียนมาแล้ว ยังมีเมธอด .agg() อีกด้วย เมธอดนี้ช่วยให้สามารถส่ง expression ของคอลัมน์แบบ aggregate ที่ใช้ฟังก์ชัน aggregate ใด ๆ จาก submodule pyspark.sql.functions ได้

Submodule นี้มีฟังก์ชันที่มีประโยชน์มากมาย เช่น การคำนวณค่าเบี่ยงเบนมาตรฐาน ฟังก์ชัน aggregation ทั้งหมดใน submodule นี้รับชื่อคอลัมน์จากตาราง GroupedData

ขอเตือนว่า SparkSession ชื่อ spark และ Spark DataFrame ชื่อ flights มีอยู่ใน workspace ของคุณแล้ว รวมถึง DataFrame ที่จัดกลุ่มไว้จากแบบฝึกหัดก่อนหน้าด้วย

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

พื้นฐาน PySpark

ดูคอร์ส

คำแนะนำการฝึกหัด

  • Import submodule pyspark.sql.functions โดยใช้ชื่อย่อว่า F
  • สร้างตาราง GroupedData ชื่อ by_month_dest โดยจัดกลุ่มตามคอลัมน์ month และ dest พร้อมกัน โดยส่งชื่อคอลัมน์ทั้งสองเป็น argument แยกกัน
  • ใช้เมธอด .avg() บน DataFrame by_month_dest เพื่อหาค่าเฉลี่ยของ dep_delay ในแต่ละเดือนสำหรับแต่ละปลายทาง
  • หาค่าเบี่ยงเบนมาตรฐานของ dep_delay โดยใช้เมธอด .agg() ร่วมกับฟังก์ชัน F.stddev()

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Import pyspark.sql.functions as F
import ____ as F

# Group by month and dest
by_month_dest = flights.groupBy(____)

# Average departure delay by month and destination
by_month_dest.____.show()

# Standard deviation of departure delay
by_month_dest.agg(F.____(____)).show()
แก้ไขและรันโค้ด