Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Pandas : comment remplacer les valeurs NaN par une chaîne



Vous pouvez utiliser les méthodes suivantes pour remplacer les valeurs NaN par des chaînes dans un DataFrame pandas :

Méthode 1 : remplacer les valeurs NaN par une chaîne dans l’ensemble du DataFrame

df.fillna('', inplace=True)

Méthode 2 : remplacer les valeurs NaN par une chaîne dans des colonnes spécifiques

df[['col1', 'col2']] = df[['col1','col2']].fillna('')

Méthode 3 : remplacer les valeurs NaN par une chaîne dans une colonne

df.col1 = df.col1.fillna('')

Les exemples suivants montrent comment utiliser chaque méthode avec le DataFrame pandas suivant :

import pandas as pd
import numpy as np

#create DataFrame with some NaN values
df = pd.DataFrame({'team': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   'points': [np.nan, 11, 7, 7, 8, 6, 14, 15],
                   'assists': [5, np.nan, 7, 9, 12, 9, 9, 4],
                   'rebounds': [11, 8, 10, np.nan, 6, 5, 9, np.nan]})

#view DataFrame
df

team	points	assists	rebounds
0	A	NaN	5.0	11.0
1	A	11.0	NaN	8.0
2	A	7.0	7.0	10.0
3	A	7.0	9.0	NaN
4	B	8.0	12.0	6.0
5	B	6.0	9.0	5.0
6	B	14.0	9.0	9.0
7	B	15.0	4.0	NaN

Méthode 1 : remplacer les valeurs NaN par une chaîne dans l’ensemble du DataFrame

Le code suivant montre comment remplacer chaque valeur NaN d’un DataFrame entier par une chaîne vide :

#replace NaN values in all columns with empty string
df.fillna('', inplace=True)

#view updated DataFrame
df

	team	points	assists	rebounds
0	A		5.0	11.0
1	A	11.0		8.0
2	A	7.0	7.0	10.0
3	A	7.0	9.0	
4	B	8.0	12.0	6.0
5	B	6.0	9.0	5.0
6	B	14.0	9.0	9.0
7	B	15.0	4.0	

Notez que chaque valeur NaN dans chaque colonne a été remplacée par une chaîne vide.

Méthode 2 : remplacer les valeurs NaN par une chaîne dans des colonnes spécifiques

Le code suivant montre comment remplacer les valeurs NaN dans des colonnes spécifiques par une chaîne spécifique :

#replace NaN values in 'points' and 'rebounds' columns with 'none'
df[['points', 'rebounds']] = df[['points', 'rebounds']].fillna('none')

#view updated DataFrame
df

        team	points	assists	rebounds
0	A	none	5.0	11.0
1	A	11.0	NaN	8.0
2	A	7.0	7.0	10.0
3	A	7.0	9.0	none
4	B	8.0	12.0	6.0
5	B	6.0	9.0	5.0
6	B	14.0	9.0	9.0
7	B	15.0	4.0	none	

Notez que les valeurs NaN dans les colonnes « points » et « rebonds » ont été remplacées par la chaîne « aucun », mais les valeurs NaN dans la colonne « passes décisives » sont restées inchangées.

Méthode 3 : remplacer les valeurs NaN par une chaîne dans une colonne

Le code suivant montre comment remplacer les valeurs NaN dans une colonne par une chaîne spécifique :

#replace NaN values in 'points' column with 'zero'
df.points = df.points.fillna('zero')

#view updated DataFrame
df

	team	points	assists	rebounds
0	A	zero	5.0	11.0
1	A	11.0	NaN	8.0
2	A	7.0	7.0	10.0
3	A	7.0	9.0	NaN
4	B	8.0	12.0	6.0
5	B	6.0	9.0	5.0
6	B	14.0	9.0	9.0
7	B	15.0	4.0	NaN	

Notez que la valeur NaN dans la colonne « points » a été remplacée par la chaîne « zéro », mais les valeurs NaN dans les colonnes « passes décisives » et « rebonds » sont restées inchangées.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans les pandas :

Pandas : comment remplacer les valeurs dans une colonne en fonction de la condition
Pandas : comment remplacer les valeurs NaN par zéro
Pandas : Comment compter les valeurs manquantes dans DataFrame

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *