Pandas DataFrame DataFrame.aggregate() Fonction

Minahil Noor 30 janvier 2023
  1. Syntaxe de pandas.DataFrame.aggregate()
  2. Exemples de codes: Pandas DataFrame.aggregate()
  3. Exemples de codes: DataFrame.aggregate() avec les fonctions multiples
  4. Exemples de codes: DataFrame.aggregate() avec une colonne spécifiée
Pandas DataFrame DataFrame.aggregate() Fonction

La fonction pandas.DataFrame.aggregate() agrège les colonnes ou les lignes d’une DataFrame. Les fonctions d’agrégation les plus couramment utilisées sont min, max et sum. Ces fonctions d’agrégation entraînent une réduction de la taille du DataFrame.

Syntaxe de pandas.DataFrame.aggregate()

DataFrame.aggregate(func, axis, *args, **kwargs)

Paramètres

func C’est la fonction d’agrégation à appliquer. Il peut s’agir d’un callable ou d’une list of callables, string or a list of strings, or a dictionary.
axis 0 par défaut. S’il vaut 0 ou 'index', la fonction est appliquée aux colonnes individuelles. Si c’est 1 ou 'columns' alors la fonction est appliquée aux lignes individuelles
*args C’est un argument positionnel.
**kwargs Il s’agit d’un argument de mot clé.

Revenir

Cette fonction retourne un scalaire, une Series ou un DataFrame.

  • Il retourne un scalaire si une seule fonction est appelée avec Series.agg().
  • Il retourne une Series si une seule fonction est appelée avec DataFrame.agg().
  • Il retourne un DataFrame si plusieurs fonctions sont appelées avec DataFrame.agg().

Exemples de codes: Pandas DataFrame.aggregate()

DataFrame.agg() est un alias pour DataFrame.aggregate(). Il vaut mieux utiliser l’alias. Nous allons donc utiliser DataFrame.agg() dans les exemples de codes.

import pandas as pd

dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 78,4: 95},
                    'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
                    'Obtained Marks': {0: 90, 1: 75, 2: 82, 3: 64, 4: 45}})
print(dataframe)

L’exemple DataFrame est ci-dessous.

   Attendance    Name Obtained Marks
0          60  Olivia            90
1         100    John            75
2          80   Laura            82
3          78     Ben            64
4          95   Kevin            45

Nous allons d’abord vérifier la fonction DataFrame.agg() en utilisant une seule fonction d’agrégation.

import pandas as pd

dataframe = pd.DataFrame(
    {
        "Attendance": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95},
        "Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
        "Obtained Marks": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45},
    }
)

dataframe1 = dataframe.agg("sum")
print(dataframe1)

Production:

Attendance                            413
Name              OliviaJohnLauraBenKevin
Obtained Marks                        356
dtype: object

La fonction d’agrégation sum est appliquée aux colonnes individuelles.

Pour la colonne de type entier, elle a généré la somme; et pour la colonne de type string, il a concaténé les chaînes. dtype: object montre qu’un Series est retourné.

Exemples de codes: DataFrame.aggregate() avec les fonctions multiples

import pandas as pd

dataframe = pd.DataFrame(
    {
        "Attendance": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95},
        "Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
        "Obtained Marks": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45},
    }
)

dataframe1 = dataframe.agg(["sum", "min"])
print(dataframe1)

Production:

     Attendance                     Name  Obtained Marks
sum         413  OliviaJohnLauraBenKevin             356
min          60                      Ben              45

Les fonctions d’agrégation sum et min sont appliquées aux colonnes individuelles.

Pour la colonne de type entier, la fonction min a généré la valeur minimale, et pour la colonne de type string, elle a montré la chaîne avec une longueur minimale.

Exemples de codes: DataFrame.aggregate() avec une colonne spécifiée

import pandas as pd

dataframe = pd.DataFrame(
    {
        "Attendance": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95},
        "Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
        "Obtained Marks": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45},
    }
)

dataframe1 = dataframe.agg({"Obtained Marks": "sum"})
print(dataframe1)

Production:

Obtained Marks    356
dtype: int64

La somme d’une seule colonne est renvoyée. dtype: int64 montre que cette fonction a retourné une Series.

Nous pourrions également appliquer plusieurs fonctions sur une seule colonne.

import pandas as pd

dataframe = pd.DataFrame(
    {
        "Attendance": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95},
        "Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
        "Obtained Marks": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45},
    }
)
dataframe1 = dataframe.agg({"Obtained Marks": ["sum", "max"]})
print(dataframe1)

Production:

     Obtained Marks
sum             356
max              90

Article connexe - Pandas DataFrame