La fonction Python Pandas DataFrame.isna() vous permet d’iden­ti­fier les données man­quantes (NaN ou None) dans un DataFrame. Cela peut être utile pour dé­ter­mi­ner si des analyses peuvent avoir lieu ou si un nettoyage des données est né­ces­saire au préalable.

Syntaxe de Pandas isna()

Comme Pandas isna() ne prend pas de pa­ra­mètres, la syntaxe de la fonction est très simple et ressemble à ceci :

DataFrame.isna()
python

Ap­pli­ca­tion de la fonction isna()

Pandas isna() est appliqué à un DataFrame pour créer un nouveau DataFrame avec des valeurs boo­léennes. Si une valeur est manquante dans le DataFrame original, ou si elle est NaN ou None, la valeur True est stockée à l’em­pla­ce­ment cor­res­pon­dant dans le résultat. Sinon, isna() renvoie la valeur False à la position cor­res­pon­dante.

Note

Si vous souhaitez non seulement iden­ti­fier les valeurs NaN ou None, mais également les supprimer, consultez notre article sur la fonction Pandas dropna(). Et si vous souhaitez remplacer sys­té­ma­ti­que­ment les valeurs, découvrez la fonction fillna().

Iden­ti­fi­ca­tion des valeurs man­quantes dans un DataFrame

Dans les exemples suivants, nous con­si­dé­rons un DataFrame contenant des in­for­ma­tions sur dif­fé­rentes personnes, mais dans lequel certaines données sont man­quantes ou ont la valeur None :

import pandas as pd
# Création d’un DataFrame d’exemple
données = {
    'Nom': ['Alice', 'Bob', None, 'David'],
    'Âge': [25, None, 35, 40],
    'Ville': ['New York', 'Los Angeles', 'Chicago', None]
}
df = pd.DataFrame(données)
print(df)
python

Le DataFrame se présente comme suit :

Nom   Âge       Ville
0  Alice  25.0    New York
1    Bob   NaN  Los Angeles
2   None  35.0     Chicago
3  David  40.0        None

Pour savoir exac­te­ment quelles valeurs manquent, isna() peut être appelé sur le DataFrame.

# Application de la fonction isna() de Pandas
missing_values = df.isna()
print(missing_values)
python

L’appel de fonction renvoie un nouveau DataFrame dans lequel une valeur est remplacée par True si la valeur originale est manquante, et par False si la valeur est présente. Le résultat se présente donc de la manière suivante :

Nom    Âge  Ville
0  False  False  False
1  False   True  False
2   True  False  False
3  False  False   True

Compter les valeurs man­quantes par colonne

Il peut être utile de savoir combien de valeurs manquent dans chaque colonne pour décider comment traiter les données man­quantes. Pour cela, Pandas isna() peut être utilisé en com­bi­nai­son avec la fonction Python sum().

# Compter les valeurs manquantes par colonne
missing_count = df.isna().sum()
print(missing_count)
python

Le résultat indique combien de valeurs manquent dans chaque colonne :

Nom      1
Âge      1
Ville    1
dtype: int64
Aller au menu principal