如何将数据框中的真假值转换为 1 为真,0 为假
问题描述
如何将Dataframe中的真假值转换为1为真,0为假
How to convert true false values in Dataframe as 1 for true and 0 for false
COL1 COL2 COL3 COL4
12 TRUE 14 FALSE
13 FALSE 13 TRUE
OUTPUT
12 1 14 0
13 0 13 1
解决方案
首先,如果你有字符串 'TRUE'
和 'FALSE'
,你可以将它们转换像这样布尔 True
和 False
值:
First, if you have the strings 'TRUE'
and 'FALSE'
, you can convert those to boolean True
and False
values like this:
df['COL2'] == 'TRUE'
这会给你一个 bool
列.可以使用 astype
转换为 int
(因为 bool
是整数类型,其中 True
表示 1
和 False
表示 0
,这正是你想要的):
That gives you a bool
column. You can use astype
to convert to int
(because bool
is an integral type, where True
means 1
and False
means 0
, which is exactly what you want):
(df['COL2'] == 'TRUE').astype(int)
要用这个新的 int
列替换旧的字符串列,只需分配它:
To replace the old string column with this new int
column, just assign it:
df['COL2'] = (df['COL2'] == 'TRUE').astype(int)
要同时对两列执行此操作,只需使用列列表进行索引:
And to do that to two columns at one, just index with a list of columns:
df[['COL2', 'COL4']] = (df[['COL2', 'COL4']] == 'TRUE').astype(int)
相关文章