CommencezCommencez gratuitement

Un groupBy en PySpark

Vous avez vu comment utiliser l'infrastructure dask et son abstraction DataFrame pour faire quelques calculs. Toutefois, comme vous l'avez vu dans la vidéo, dans le monde des mégadonnées, Spark est probablement un choix plus populaire pour le traitement des données.

Dans cet exercice, vous utiliserez le paquet PySpark pour manipuler un DataFrame Spark. Les données sont les mêmes que dans les exercices précédents : des participantes et participants aux épreuves olympiques entre 1896 et 2016.

Le DataFrame Spark, athlete_events_spark, est disponible dans votre espace de travail.

Les méthodes que vous allez utiliser dans cet exercice sont :

  • .printSchema() : permet d'imprimer le schéma d'un DataFrame Spark.
  • .groupBy() : instruction de groupement pour une agrégation.
  • .mean() : calcule la moyenne pour chaque groupe.
  • .show() : affiche les résultats.

Cette activité fait partie du cours

Introduction à l'ingénierie des données

Voir le cours

Instructions de l’exercice

  • Trouvez le type de athlete_events_spark.
  • Trouvez le schéma de athlete_events_spark.
  • Affichez l'âge moyen des athlètes olympiques, groupé par année. Remarquez que Spark n'a encore rien calculé. On appelle cela une évaluation différée (lazy evaluation).
  • Reprenez le résultat précédent et appelez .show() dessus pour calculer la moyenne de l'âge.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Print the type of athlete_events_spark
print(____(athlete_events_spark))

# Print the schema of athlete_events_spark
print(athlete_events_spark.____())

# Group by the Year, and find the mean Age
print(athlete_events_spark.____('Year').mean(____))

# Group by the Year, and find the mean Age
print(athlete_events_spark.____('Year').mean(____).____())
Modifier et exécuter le code