Hoe booleaanse waarden naar gehele waarden in panda's te converteren


U kunt de volgende basissyntaxis gebruiken om een kolom met Booleaanse waarden te converteren naar een kolom met gehele waarden in panda’s:

 df. column1 = df. column1 . replace ({ True : 1 , False : 0 })

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld: converteer een booleaanse waarde naar een geheel getal in Panda’s

Stel dat we de volgende panda’s DataFrame hebben:

 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

We kunnen dtypes gebruiken om snel het gegevenstype van elke kolom te controleren:

 #check data type of each column
df. dtypes

team object
int64 dots
playoffs bool
dtype:object

We zien dat de kolom ‚playoffs‘ van het type boolean is.

We kunnen de volgende code gebruiken om de True/False-waarden in de kolom “play-offs” snel om te zetten naar gehele 1/0-waarden:

 #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

Elke True- waarde werd geconverteerd naar 1 en elke False- waarde werd geconverteerd naar 0 .

We kunnen dtypes opnieuw gebruiken om te verifiëren dat de kolom ‚playoffs‘ nu een geheel getal is:

 #check data type of each column
df. dtypes

team object
int64 dots
playoffs int64
dtype:object

We kunnen zien dat de kolom ‚playoffs‘ nu van het type int64 is.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in panda’s kunt uitvoeren:

Hoe een categorische variabele naar numeriek te converteren in Pandas
Hoe Pandas DataFrame-kolommen naar int te converteren
Hoe DateTime naar string te converteren in Pandas

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert