Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Groupement Avancé | Agrégation de Données
Techniques Avancées dans Pandas
course content

Contenu du cours

Techniques Avancées dans Pandas

Techniques Avancées dans Pandas

1. Se Familiariser Avec l'Indexation et la Sélection de Données
2. Gestion des Conditions
3. Extraction de Données
4. Agrégation de Données
5. Prétraitement des Données

book
Groupement Avancé

Élargissons nos connaissances sur la méthode .groupby(). Comme vous vous en souvenez, nous pouvons utiliser la méthode .agg(). En effet, les principaux avantages de cette fonction sont que nous pouvons appliquer une fonction différente aux colonnes numériques avec une clé de groupe. Regardez l'exemple où nous avons regroupé les vols par la colonne 'Airline', puis compté les valeurs dans 'Delay' pour chaque 'Airline', et calculé les valeurs minimales et maximales pour la colonne 'Length'. Tellement pratique, n'est-ce pas ?

1234
import 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))
copy

Explication :

  • .agg() - une méthode qui nous permet d'appliquer des fonctions sur une série ou sur chaque élément séparément ;
  • {} - nous utilisons des accolades pour spécifier la colonne et appliquer des fonctions directement à celles-ci ;
  • 'Delay': 'count' - applique la fonction .count() aux valeurs de la colonne 'Delay' ayant le même groupe clé ;
  • 'Length': ['min', 'max'] - applique les fonctions .min() et .max() aux valeurs de la colonne 'Length' ayant le même groupe clé. Vous devez simplement mettre le nom de la colonne sans les symboles () ou . dans la fonction. Faites attention ; si vous souhaitez appliquer plusieurs fonctions à la même colonne, vous devez les mettre dans la liste.
Tâche

Swipe to start coding

Nous pouvons supposer qu'un retard dépend de la compagnie aérienne ou de l'aéroport, mais plongeons plus profondément et regardons les temps de retard moyen et maximum en fonction de l'aéroport d'où le vol a commencé, puis de l'aéroport où le vol s'est terminé. Regardez également la longueur médiane du vol. Suivez l'algorithme :

Regrouper les données :

  • Appliquez la méthode .groupby() au jeu de données data ;
  • Dans la méthode .groupby(), mettez les colonnes 'AirportFrom' et 'AirportTo' ; l'ordre est crucial ;
  • En utilisant la méthode .agg(), calculez les valeurs agrégées : la valeur moyenne et maximale dans la colonne 'Time', et la valeur médiane de la colonne 'Length'.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 4
toggle bottom row

book
Groupement Avancé

Élargissons nos connaissances sur la méthode .groupby(). Comme vous vous en souvenez, nous pouvons utiliser la méthode .agg(). En effet, les principaux avantages de cette fonction sont que nous pouvons appliquer une fonction différente aux colonnes numériques avec une clé de groupe. Regardez l'exemple où nous avons regroupé les vols par la colonne 'Airline', puis compté les valeurs dans 'Delay' pour chaque 'Airline', et calculé les valeurs minimales et maximales pour la colonne 'Length'. Tellement pratique, n'est-ce pas ?

1234
import 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))
copy

Explication :

  • .agg() - une méthode qui nous permet d'appliquer des fonctions sur une série ou sur chaque élément séparément ;
  • {} - nous utilisons des accolades pour spécifier la colonne et appliquer des fonctions directement à celles-ci ;
  • 'Delay': 'count' - applique la fonction .count() aux valeurs de la colonne 'Delay' ayant le même groupe clé ;
  • 'Length': ['min', 'max'] - applique les fonctions .min() et .max() aux valeurs de la colonne 'Length' ayant le même groupe clé. Vous devez simplement mettre le nom de la colonne sans les symboles () ou . dans la fonction. Faites attention ; si vous souhaitez appliquer plusieurs fonctions à la même colonne, vous devez les mettre dans la liste.
Tâche

Swipe to start coding

Nous pouvons supposer qu'un retard dépend de la compagnie aérienne ou de l'aéroport, mais plongeons plus profondément et regardons les temps de retard moyen et maximum en fonction de l'aéroport d'où le vol a commencé, puis de l'aéroport où le vol s'est terminé. Regardez également la longueur médiane du vol. Suivez l'algorithme :

Regrouper les données :

  • Appliquez la méthode .groupby() au jeu de données data ;
  • Dans la méthode .groupby(), mettez les colonnes 'AirportFrom' et 'AirportTo' ; l'ordre est crucial ;
  • En utilisant la méthode .agg(), calculez les valeurs agrégées : la valeur moyenne et maximale dans la colonne 'Time', et la valeur médiane de la colonne 'Length'.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 4
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
We're sorry to hear that something went wrong. What happened?
some-alt