Remplir les valeurs manquantes
Vous pouvez remplir ces valeurs manquantes avec un scalaire, comme une constante (par exemple, 0 ou la moyenne des valeurs d’une colonne), ou bien utiliser des méthodes d’imputation plus avancées, telles que la propagation des valeurs vers l’avant (ffill()) ou vers l’arrière (bfill()). L’argument value permet de spécifier une valeur unique ou un dictionnaire pour remplacer les NaN dans des colonnes spécifiques. Cela offre une flexibilité pour traiter les données manquantes sans les supprimer, ce qui peut être particulièrement utile dans le cadre d’analyses où la perte de données serait préjudiciable.
Fonctions :
-
fillna()
La fonction fillna() permet de remplacer les valeurs manquantes (NaN) dans un DataFrame par une valeur spécifique, une méthode de remplissage (comme la méthode de propagation), ou même une valeur calculée à partir des autres éléments du DataFrame. Elle est utilisée pour compléter les données manquantes.
Importation :
import pandas as pdAttributs :
Paramètre Type Description Valeur par défaut valuescalar, dict, Series, ou DataFrame Valeur(s) de remplacement pour les valeurs manquantes. Peut être une valeur unique ou un dictionnaire pour remplacer des colonnes spécifiques. Nonemethodstr, optionnel Méthode de propagation des valeurs manquantes. Peut être 'ffill'(propagation vers l'avant) ou'bfill'(propagation vers l'arrière).Noneaxisint, optionnel Spécifie si le remplacement doit se faire sur les lignes ( axis=0) ou les colonnes (axis=1).Noneinplacebool Si True, modifie le DataFrame en place. SiFalse, renvoie un nouveau DataFrame.Falselimitint, optionnel Limite le nombre de valeurs manquantes à remplacer. NoneExemple de code :
import pandas as pd # Création d'un DataFrame exemple avec des valeurs manquantes data = { 'Nom': ['Alice', 'Bob', 'Charlie', None, 'Eva'], 'Âge': [24, None, 35, 40, None], 'Ville': ['Paris', 'Lyon', None, 'Nice', 'Bordeaux'] } df = pd.DataFrame(data) # Remplacer les valeurs manquantes par une valeur spécifique (ici, 'Inconnu' pour les noms et 'Inconnu' pour les villes) df_filled = df.fillna(value={'Nom': 'Inconnu', 'Ville': 'Inconnu'}) # Afficher le DataFrame après remplacement print(df_filled)
Explication du code :
import pandas as pdimporte la bibliothèque pandas, renommée ici enpd, ce qui facilite son utilisation dans le reste du code.Création d’un DataFrame avec des valeurs manquantes
On crée un dictionnaire nommédatacontenant trois colonnes :Nom,ÂgeetVille, dont certaines cellules contiennent la valeurNone, représentant des valeurs manquantes.df = pd.DataFrame(data)transforme ce dictionnaire en un DataFrame nommédf.Remplacer les valeurs manquantes
La méthodefillna()est utilisée pour remplacer les valeurs manquantes (NaN) dans le DataFrame. Le paramètrevaluepermet de spécifier un dictionnaire associant chaque colonne à une valeur de remplacement. Ici, les valeurs manquantes dans la colonneNometVillesont remplacées par'Inconnu'.df_filled = df.fillna(value={'Nom': 'Inconnu', 'Ville': 'Inconnu'})crée donc un nouveau DataFramedf_filledavec les valeurs manquantes de ces deux colonnes remplacées.Afficher le DataFrame résultant
La fonctionprint(df_filled)affiche le contenu du DataFrame après traitement, permettant de vérifier que les remplacements ont bien été effectués.