Agregasi
Semua metode agregasi umum seperti .min(), .max(), dan .count() adalah metode GroupedData. Objek ini dibuat dengan memanggil metode DataFrame .groupBy(). Anda akan mempelajari arti pastinya dalam beberapa latihan. Untuk sekarang, yang perlu Anda lakukan agar dapat menggunakan fungsi-fungsi tersebut adalah memanggil metode itu pada DataFrame Anda. Sebagai contoh, untuk mencari nilai minimum dari sebuah kolom, col, dalam sebuah DataFrame, df, Anda dapat menuliskan
df.groupBy().min("col").show()
Ini membuat sebuah objek GroupedData (sehingga Anda dapat menggunakan metode .min()), lalu mencari nilai minimum pada col, dan mengembalikannya sebagai sebuah DataFrame.
Sekarang Anda siap melakukan agregasi sendiri!
SparkSession bernama spark sudah tersedia di workspace Anda, bersama dengan Spark DataFrame flights.
Latihan ini adalah bagian dari kursus
Dasar-Dasar PySpark
Petunjuk latihan
- Cari panjang penerbangan terpendek (dalam hal jarak) yang berangkat dari PDX dengan terlebih dahulu melakukan
.filter()dan menggunakan metode.min(). Lakukan penyaringan dengan merujuk langsung ke kolom, bukan dengan mengoper SQL string. - Cari durasi penerbangan terpanjang (dalam hal waktu) yang berangkat dari SEA dengan melakukan
filter()dan menggunakan metode.max(). Lakukan penyaringan dengan merujuk langsung ke kolom, bukan dengan mengoper SQL string.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Find the shortest flight from PDX in terms of distance
flights.filter(____.____ == ____).groupBy().____(____).show()
# Find the longest flight from SEA in terms of air time
flights.filter(____).groupBy().____.show()