CommencerCommencer gratuitement

Regroupement et agrégation I

La puissance de l'agrégation repose en partie sur l'ajout de groupes. PySpark a une classe entière consacrée aux cadres de données groupées : pyspark.sql.GroupedData, que vous avez vu dans les deux derniers exercices.

Vous avez appris à créer un DataFrame groupé en appelant la méthode .groupBy() sur un DataFrame sans arguments.

Vous verrez maintenant que lorsque vous transmettez le nom d'une ou plusieurs colonnes de votre DataFrame à la méthode .groupBy(), les méthodes d'agrégation se comportent comme lorsque vous utilisez une instruction GROUP BY dans une requête SQL!

Rappelez-vous qu'un site SparkSession appelé spark se trouve déjà dans votre espace de travail, ainsi que le DataFrame Spark flights.

Cet exercice fait partie du cours

Introduction à PySpark

Afficher le cours

Instructions

  • Créez un DataFrame appelé by_plane qui est groupé par la colonne tailnum.
  • Utilisez la méthode .count() sans arguments pour compter le nombre de vols effectués par chaque avion.
  • Créez un DataFrame appelé by_origin qui est groupé par la colonne origin.
  • Trouvez le .avg() de la colonne air_time pour trouver la durée moyenne des vols à partir de PDX et SEA.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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()
Modifier et exécuter le code