我有一个看起来像这样的数据帧:
key Candidate Position duplicates
0 0-39-1 SHRI. BISHNU PADA RAY 1 False
1 0-39-1 SHRI. KULDEEP RAI SHARMA 2 False
2 0-39-1 SHRI TAPAN KUMAR BEPARI 3 False
3 0-39-1 SHRI. P. R. GANESHAN 4 False
4 0-39-1 SMTI. R. S. UMA BHARATTH 5 True
如果重复值为真,我希望值为1,如果为假,则为0。此列只有这两个值。我阅读了很多关于这方面的答案,并已经尝试了以下几点:
df["duplicates"] = int(df["duplicates"]==True)
df["flag_numeric"][df["duplicates"]==True] = 1
以及其他一些琐碎的解决方案,但每次我都会出现以下错误:
'bool' object is not subscriptable
因为我是python新手,有人能帮我找到正确的答案吗
大概是这样的:
将布尔值转换为0和1可以通过强制转换为int来完成。为此,请使用
astype
方法:括号外的双等号
==
也是必需的,将其设置为:df[df['column_name'] == value] == 1
因此,在您的情况下,它将是:
希望这有帮助
相关问题 更多 >
编程相关推荐