single
Regroupement Avancé
Glissez pour afficher le menu
Approfondissement de la méthode .groupby(). Comme vous vous en souvenez, il est possible d'utiliser la méthode .agg(). L'avantage principal de cette fonction réside dans sa flexibilité : elle permet d'appliquer plusieurs agrégations différentes à plusieurs colonnes simultanément, en renvoyant un tableau récapitulatif clair.
Consultez l'exemple ci-dessous. Les vols ont été groupés par 'Airline'. Ensuite, grâce à .agg(), le nombre total de vols a été compté (en utilisant la colonne 'Delay') et la durée la plus courte ainsi que la plus longue des vols ont été déterminées (en utilisant la colonne 'Length'). Pratique, n'est-ce pas ?
1234import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/plane', index_col = 0) data_flights = data.groupby('Airline').agg({'Delay': 'count', 'Length': ['min', 'max']}) print(data_flights.head(10))
Explication :
.agg({'Delay': 'count', 'Length': ['min', 'max']})
.agg(): Abréviation de « aggregate ». Cette méthode prend les données groupées et les résume en statistiques selon les règles fournies.{}: Un dictionnaire Python est utilisé pour associer des colonnes spécifiques à des opérations spécifiques. Les clés correspondent aux noms des colonnes ciblées, et les valeurs aux fonctions à appliquer.'Delay': 'count': Indique à pandas d'appliquer la fonction de comptage à la colonne'Delay'pour chaque groupe. Remarquez que l'on passe l'alias sous forme de chaîne de caractères'count'au lieu d'écrirecount(). Pandas reconnaît ces noms standards pour les statistiques courantes.'Length': ['min', 'max']: Pour appliquer plus d'une fonction à une même colonne, il faut placer les noms des fonctions dans une liste[]. Ici, la valeur minimale et la valeur maximale de la colonne'Length'sont calculées.
Comme plusieurs fonctions ont été appliquées, le DataFrame résultant crée automatiquement des colonnes hiérarchiques (MultiIndex). Vous verrez Length au niveau supérieur, avec min et max classés en dessous.
Glissez pour commencer à coder
Votre tâche consiste à approfondir l'analyse en examinant les temps de retard moyens et maximaux en fonction de l'aéroport de départ, puis de l'aéroport d'arrivée. Analysez également la durée médiane du vol. Suivez l'algorithme :
Regroupement des données :
- Appliquez la méthode
.groupby()au jeu de donnéesdata; - Dans la méthode
.groupby(), indiquez les colonnes'AirportFrom'et'AirportTo'; l'ordre est essentiel ; - À l'aide de la méthode
.agg(), calculez les valeurs agrégées : la valeur moyenne et maximale de la colonne'Time', ainsi que la valeur médiane de la colonne'Length'.
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion