Fonction Pandas isna() : détecter les valeurs manquantes
La fonction Python Pandas DataFrame.isna()
vous permet d’identifier les données manquantes (NaN
ou None
) dans un DataFrame. Cela peut être utile pour déterminer si des analyses peuvent avoir lieu ou si un nettoyage des données est nécessaire au préalable.
- Certificat SSL et protection DDoS
- Sauvegarde et restauration des données
- Assistance 24/7 et conseiller personnel
Syntaxe de Pandas isna()
Comme Pandas isna()
ne prend pas de paramètres, la syntaxe de la fonction est très simple et ressemble à ceci :
DataFrame.isna()
pythonApplication de la fonction isna()
Pandas isna()
est appliqué à un DataFrame pour créer un nouveau DataFrame avec des valeurs booléennes. Si une valeur est manquante dans le DataFrame original, ou si elle est NaN
ou None
, la valeur True
est stockée à l’emplacement correspondant dans le résultat. Sinon, isna()
renvoie la valeur False
à la position correspondante.
Si vous souhaitez non seulement identifier les valeurs NaN
ou None
, mais également les supprimer, consultez notre article sur la fonction Pandas dropna()
. Et si vous souhaitez remplacer systématiquement les valeurs, découvrez la fonction fillna()
.
Identification des valeurs manquantes dans un DataFrame
Dans les exemples suivants, nous considérons un DataFrame contenant des informations sur différentes personnes, mais dans lequel certaines données sont manquantes 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)
pythonLe 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 exactement quelles valeurs manquent, isna()
peut être appelé sur le DataFrame.
# Application de la fonction isna() de Pandas
missing_values = df.isna()
print(missing_values)
pythonL’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 manquantes par colonne
Il peut être utile de savoir combien de valeurs manquent dans chaque colonne pour décider comment traiter les données manquantes. Pour cela, Pandas isna()
peut être utilisé en combinaison avec la fonction Python sum()
.
# Compter les valeurs manquantes par colonne
missing_count = df.isna().sum()
print(missing_count)
pythonLe résultat indique combien de valeurs manquent dans chaque colonne :
Nom 1
Âge 1
Ville 1
dtype: int64