Comment convertir des valeurs booléennes en valeurs entières dans Pandas
Vous pouvez utiliser la syntaxe de base suivante pour convertir une colonne de valeurs booléennes en une colonne de valeurs entières dans pandas :
df.column1 = df.column1.replace({True: 1, False: 0})
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : convertir un booléen en entier dans Pandas
Supposons que nous ayons le DataFrame pandas suivant :
import pandas as pd #create DataFrame df = pd.DataFrame({'team': ['A', 'B', 'C', 'D', 'E', 'F', 'G'], 'points': [18, 22, 19, 14, 14, 11, 20], 'playoffs': [True, False, False, False, True, False, True]}) #view DataFrame df
Nous pouvons utiliser des dtypes pour vérifier rapidement le type de données de chaque colonne :
#check data type of each column
df.dtypes
team object
points int64
playoffs bool
dtype: object
On voit que la colonne ‘playoffs’ est de type boolean .
Nous pouvons utiliser le code suivant pour convertir rapidement les valeurs Vrai/Faux de la colonne « playoffs » en valeurs entières 1/0 :
#convert 'playoffs' column to integer df.playoffs = df.playoffs.replace({True: 1, False: 0}) #view updated DataFrame df team points playoffs 0 A 18 1 1 B 22 0 2 C 19 0 3 D 14 0 4 E 14 1 5 F 11 0 6 G 20 1
Chaque valeur True a été convertie en 1 et chaque valeur False a été convertie en 0 .
Nous pouvons à nouveau utiliser dtypes pour vérifier que la colonne ‘playoffs’ est désormais un entier :
#check data type of each column df.dtypes team object points int64 playoffs int64 dtype: object
Nous pouvons voir que la colonne ‘playoffs’ est désormais de type int64 .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans les pandas :
Comment convertir une variable catégorielle en numérique dans Pandas
Comment convertir les colonnes Pandas DataFrame en int
Comment convertir DateTime en chaîne dans Pandas