Pandas DataFrame DataFrame.where() Fonction

Minahil Noor 30 janvier 2023
  1. Syntaxe de pandas.DataFrame.where()
  2. Exemples de codes : DataFrame.where()
  3. Exemples de codes : DataFrame.where() pour spécifier une valeur
  4. Exemples de codes: DataFrame.where() pour utiliser plusieurs conditions
Pandas DataFrame DataFrame.where() Fonction

La fonction Python Pandas DataFrame.where() accepte une condition comme paramètre et produit des résultats en conséquence. Elle vérifie la condition pour chaque valeur de la DataFrame et sélectionne les valeurs qui acceptent la condition. La fonctionnalité de cette fonction est similaire à celle de la déclaration if-else. La valeur qui n’accepte pas la condition est remplacée par une valeur NaN par défaut.

Syntaxe de pandas.DataFrame.where()

DataFrame.where(
    cond,
    other=NaN,
    inplace=False,
    axis=None,
    level=None,
    errors="raise",
    try_cast=False,
)

Paramètres

Cette fonction a plusieurs paramètres. Les valeurs par défaut de tous les paramètres sont mentionnées ci-dessus.

cond Il s’agit d’une Series booléenne ou DataFrame, une structure de type tableau ou, un appel. Il représente la ou les conditions à vérifier pour chaque valeur du DataFrame. Si la condition est True, alors la valeur originale n’est pas remplacée. Sinon, elle est remplacée par une valeur NaN.
other Il s’agit d’un scalaire, Series/DataFrame, ou d’un appel. Il représente la valeur qui sera placée pour la valeur originale si la condition est False.
inplace Il s’agit d’une valeur booléenne. Elle renseigne sur l’opération sur les données. Si elle est True, elle fait des changements elle-même.
axis Il s’agit d’une valeur entière. Elle indique l’axe de travail en lignes ou en colonnes.
level Il s’agit d’une valeur entière. Elle renseigne sur le niveau.
errors Il s’agit d’une chaîne de caractères. Elle indique les erreurs. Elle accepte deux options : raise ou ignore. Si sa valeur est raise, alors elle permet d’augmenter les exceptions. Si sa valeur est ignore, alors il ignore les exceptions et retourne l’objet original en cas d’erreur.
try_cast Il s’agit d’une valeur booléenne. Elle ramène la sortie de la fonction au type d’entrée original si possible.

Renvoie

Il retourne la DataFrame modifiée en fonction de la condition.

Exemples de codes : DataFrame.where()

Nous en apprendrons davantage sur cette fonction en la mettant en œuvre dans le prochain exemple de code.

import pandas as pd

dataframe=pd.DataFrame({
                        'A': 
                            {0: 60, 
                            1: 100, 
                            2: 80,
                            3: 78,
                            4: 95,
                            5: 45,
                            6: 67,
                            7: 12,
                            8: 23,
                            9: 50},
                        'B': 
                            {0: 90, 
                            1: 75, 
                            2: 82, 
                            3: 64, 
                            4: 45,
                            5: 35,
                            6: 74,
                            7: 52,
                            8: 93,
                            9: 18}
                        })

print(dataframe)

L’exemple DataFrame est,

     A   B
0   60  90
1  100  75
2   80  82
3   78  64
4   95  45
5   45  35
6   67  74
7   12  52
8   23  93
9   50  18

Cette fonction a un paramètre obligatoire, à savoir cond.

import pandas as pd

dataframe = pd.DataFrame(
    {
        "A": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95, 5: 45, 6: 67, 7: 12, 8: 23, 9: 50},
        "B": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45, 5: 35, 6: 74, 7: 52, 8: 93, 9: 18},
    }
)

dataframe1 = dataframe.where(dataframe > 50)
print(dataframe1)

Production:

       A     B
0   60.0  90.0
1  100.0  75.0
2   80.0  82.0
3   78.0  64.0
4   95.0   NaN
5    NaN   NaN
6   67.0  74.0
7    NaN  52.0
8    NaN  93.0
9    NaN   NaN

Les valeurs qui ne sont pas supérieures à 50, c’est-à-dire qui ne remplissent pas la condition, sont remplacées par une valeur NaN.

Exemples de codes : DataFrame.where() pour spécifier une valeur

import pandas as pd

dataframe = pd.DataFrame(
    {
        "A": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95, 5: 45, 6: 67, 7: 12, 8: 23, 9: 50},
        "B": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45, 5: 35, 6: 74, 7: 52, 8: 93, 9: 18},
    }
)

dataframe1 = dataframe.where(dataframe > 50, other=0)
print(dataframe1)

Production:

     A   B
0   60  90
1  100  75
2   80  82
3   78  64
4   95   0
5    0   0
6   67  74
7    0  52
8    0  93
9    0   0

Ici, les valeurs qui ne remplissent pas la condition sont remplacées par une valeur définie par l’utilisateur.

Exemples de codes: DataFrame.where() pour utiliser plusieurs conditions

import pandas as pd

dataframe = pd.DataFrame(
    {
        "A": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95, 5: 45, 6: 67, 7: 12, 8: 23, 9: 50},
        "B": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45, 5: 35, 6: 74, 7: 52, 8: 93, 9: 18},
    }
)

dataframe1 = dataframe.where((dataframe == 80) | (dataframe < 50), other=0)
print(dataframe1)

Production:

    A   B
0   0   0
1   0   0
2  80   0
3   0   0
4   0  45
5  45  35
6   0   0
7  12   0
8  23   0
9   0  18

La DataFrame retournée contient les valeurs qui remplissent les deux conditions.

Article connexe - Pandas DataFrame