MulaiMulai sekarang secara gratis

Pengelompokan dan Agregasi I

Salah satu hal yang membuat agregasi begitu kuat adalah penambahan kelompok. PySpark memiliki satu kelas khusus untuk DataFrame berkelompok: pyspark.sql.GroupedData, yang telah Anda lihat pada dua latihan terakhir.

Anda telah mempelajari cara membuat DataFrame berkelompok dengan memanggil metode .groupBy() pada sebuah DataFrame tanpa argumen.

Sekarang Anda akan melihat bahwa ketika Anda meneruskan satu atau lebih nama kolom dalam DataFrame Anda ke metode .groupBy(), metode agregasi berperilaku seperti saat Anda menggunakan pernyataan GROUP BY dalam kueri SQL!

Ingat, sebuah SparkSession bernama spark sudah tersedia di ruang kerja Anda, bersama dengan Spark DataFrame flights.

Latihan ini adalah bagian dari kursus

Dasar-Dasar PySpark

Lihat Kursus

Petunjuk latihan

  • Buat DataFrame bernama by_plane yang dikelompokkan berdasarkan kolom tailnum.
  • Gunakan metode .count() tanpa argumen untuk menghitung jumlah penerbangan yang dilakukan setiap pesawat.
  • Buat DataFrame bernama by_origin yang dikelompokkan berdasarkan kolom origin.
  • Cari .avg() dari kolom air_time untuk mendapatkan durasi rata-rata penerbangan dari PDX dan SEA.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Group by tailnum
by_plane = flights.groupBy("____")

# Number of flights each plane made
by_plane.____.show()

# Group by origin
by_origin = flights.groupBy("____")

# Average duration of flights from PDX and SEA
by_origin.avg("____").show()
Edit dan Jalankan Kode