Gruplama ve Birleştirme I
Grupların eklenmesi, birleştirmeyi bu kadar güçlü kılan unsurlardan biridir. PySpark, gruplandırılmış veri çerçevelerine adanmış bütün bir sınıfa sahiptir: pyspark.sql.GroupedData. Bunu son iki egzersizde görmüştün.
Bir DataFrame üzerinde .groupBy() metodunu argümansız çağırarak gruplandırılmış bir DataFrame oluşturmayı öğrendin.
Şimdi, .groupBy() metoduna DataFrame'indeki bir veya daha fazla sütunun adını verdiğinde, birleştirme (aggregation) yöntemlerinin SQL sorgusundaki GROUP BY ifadesini kullanmaya benzer şekilde davrandığını göreceksin!
Unutma, çalışma alanında spark adlı bir SparkSession ve flights adlı Spark DataFrame'i zaten yüklü.
Bu egzersiz
PySpark Temelleri
kursunun bir parçasıdırEgzersiz talimatları
tailnumsütununa göre gruplandırılmışby_planeadlı bir DataFrame oluştur.- Her uçağın yaptığı uçuş sayısını bulmak için
.count()metodunu argümansız kullan. originsütununa göre gruplandırılmışby_originadlı bir DataFrame oluştur.- PDX ve SEA çıkışlı uçuşların ortalama süresini bulmak için
air_timesütununun.avg()değerini hesapla.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# 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()