Začněte nyníZačněte zdarma

Seskupování a agregace I

Jednou z věcí, díky které je agregace tak mocná, je možnost pracovat se skupinami. PySpark má pro seskupené datové rámce celou samostatnou třídu: pyspark.sql.GroupedData, se kterou ses setkal/a v posledních dvou cvičeních.

Naučil/a ses vytvořit seskupený DataFrame voláním metody .groupBy() na DataFrame bez argumentů.

Teď uvidíš, že když do metody .groupBy() předáš název jednoho nebo více sloupců, budou se agregační metody chovat stejně jako při použití příkazu GROUP BY v SQL dotazu!

Nezapomeň, že ve svém pracovním prostředí máš k dispozici SparkSession s názvem spark a také Spark DataFrame flights.

Toto cvičení je součástí kurzu

Foundations of PySpark

Zobrazit kurz

Pokyny k cvičení

  • Vytvoř DataFrame s názvem by_plane, který je seskupený podle sloupce tailnum.
  • Použij metodu .count() bez argumentů k počítání letů každého letadla.
  • Vytvoř DataFrame s názvem by_origin, který je seskupený podle sloupce origin.
  • Pomocí metody .avg() na sloupci air_time zjisti průměrnou dobu letu z PDX a SEA.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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()
Upravit a spustit kód