Come convertire valori booleani in valori interi in panda
È possibile utilizzare la seguente sintassi di base per convertire una colonna di valori booleani in una colonna di valori interi in panda:
df. column1 = df. column1 . replace ({ True : 1 , False : 0 })
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: converti un booleano in un numero intero in Pandas
Supponiamo di avere i seguenti panda DataFrame:
import pandas as pd #createDataFrame 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
Possiamo utilizzare dtypes per controllare rapidamente il tipo di dati di ciascuna colonna:
#check data type of each column
df. dtypes
team object
int64 dots
playoffs bool
dtype:object
Vediamo che la colonna ‘playoff’ è di tipo boolean .
Possiamo utilizzare il seguente codice per convertire rapidamente i valori Vero/Falso nella colonna “playoff” in valori interi 1/0:
#convert 'playoffs' column to integer df. playoffs = df. playoffs . replace ({ True : 1 , False : 0 }) #view updated DataFrame df team points playoffs 0 to 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
Ogni valore True è stato convertito in 1 e ogni valore False è stato convertito in 0 .
Possiamo utilizzare nuovamente dtypes per verificare che la colonna “playoffs” sia ora un numero intero:
#check data type of each column df. dtypes team object int64 dots playoffs int64 dtype:object
Possiamo vedere che la colonna ‘playoff’ ora è di tipo int64 .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:
Come convertire una variabile categoriale in numerica in Pandas
Come convertire le colonne Pandas DataFrame in int
Come convertire DateTime in stringa in Pandas