Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Gestion des Tableaux Croisés Dynamiques | Agrégation de Données
Techniques Avancées dans Pandas

bookGestion des Tableaux Croisés Dynamiques

Python possède un équivalent de la méthode .groupby() qui peut aboutir au même résultat. Le choix de la fonction à utiliser vous appartient. Examinons cela à l'aide d'un exemple. En utilisant la fonction suivante, appelée .pivot_table(), nous allons calculer les valeurs moyennes de la colonne 'Length' ayant la même valeur dans la colonne 'Flight' :

123456789101112131415
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) # The code using .groupby() data_flights_1 = data[['Length', 'Flight']].groupby('Flight').mean() # The same code using .groupby() data_flights_2 = data[['Length', 'Flight']].groupby('Flight').agg('mean') # The same code using .pivot_table() data_flights_3 = pd.pivot_table(data, values = 'Length', index = 'Flight', aggfunc = 'mean') print(data_flights_1.head())
copy

Explication :

data = pd.pivot_table(data, values = 'Length',
                      index = 'Flight',
                      aggfunc = 'mean')
  • pd.pivot_table() : fonction qui crée des tableaux croisés dynamiques ;
  • data : DataFrame utilisé ;
  • values = 'Length' : à l’argument values, on assigne les colonnes ayant le même groupe, pour lesquelles sera appliqué le calcul de la moyenne, du maximum, etc. Pour regrouper par plusieurs colonnes, placez-les dans une liste ; l’ordre n’est pas important ;
  • index = 'Flight' : index est un argument auquel on assigne le nom d’une colonne ou de plusieurs colonnes à regrouper. Pour regrouper par plusieurs colonnes, placez-les dans une liste ; l’ordre est important, comme dans la fonction .groupby() ;
  • aggfunc = 'mean' : identique à agg dans la méthode .groupby(), aggfunc possède exactement la même syntaxe que agg. Il est donc possible d’indiquer plusieurs fonctions en les plaçant dans une liste, afin de spécifier des fonctions pour différentes colonnes à l’aide d’accolades.
question mark

Voici un exemple de code utilisant l’instruction .groupby(). Veuillez choisir l’analogue utilisant la fonction .pivot_table().

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Awesome!

Completion rate improved to 3.03

bookGestion des Tableaux Croisés Dynamiques

Glissez pour afficher le menu

Python possède un équivalent de la méthode .groupby() qui peut aboutir au même résultat. Le choix de la fonction à utiliser vous appartient. Examinons cela à l'aide d'un exemple. En utilisant la fonction suivante, appelée .pivot_table(), nous allons calculer les valeurs moyennes de la colonne 'Length' ayant la même valeur dans la colonne 'Flight' :

123456789101112131415
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) # The code using .groupby() data_flights_1 = data[['Length', 'Flight']].groupby('Flight').mean() # The same code using .groupby() data_flights_2 = data[['Length', 'Flight']].groupby('Flight').agg('mean') # The same code using .pivot_table() data_flights_3 = pd.pivot_table(data, values = 'Length', index = 'Flight', aggfunc = 'mean') print(data_flights_1.head())
copy

Explication :

data = pd.pivot_table(data, values = 'Length',
                      index = 'Flight',
                      aggfunc = 'mean')
  • pd.pivot_table() : fonction qui crée des tableaux croisés dynamiques ;
  • data : DataFrame utilisé ;
  • values = 'Length' : à l’argument values, on assigne les colonnes ayant le même groupe, pour lesquelles sera appliqué le calcul de la moyenne, du maximum, etc. Pour regrouper par plusieurs colonnes, placez-les dans une liste ; l’ordre n’est pas important ;
  • index = 'Flight' : index est un argument auquel on assigne le nom d’une colonne ou de plusieurs colonnes à regrouper. Pour regrouper par plusieurs colonnes, placez-les dans une liste ; l’ordre est important, comme dans la fonction .groupby() ;
  • aggfunc = 'mean' : identique à agg dans la méthode .groupby(), aggfunc possède exactement la même syntaxe que agg. Il est donc possible d’indiquer plusieurs fonctions en les plaçant dans une liste, afin de spécifier des fonctions pour différentes colonnes à l’aide d’accolades.
question mark

Voici un exemple de code utilisant l’instruction .groupby(). Veuillez choisir l’analogue utilisant la fonction .pivot_table().

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 5
some-alt