如果尚不清楚,请先在这里发表歉意。我有一个pandas数据框,正在尝试为列中每个唯一值的第一个实例返回1,并为第一个唯一实例后的每个重复值返回0。
在Excel中,我使用了以下公式,但在较大的数据框上它将变得站不住脚。
=IF(COUNTIF($A$2:A2,A2)=1,1,0)
ID Unique
ABC1 1
ABC1 0
ABC1 0
ABC2 1
ABC3 1
ABC3 0
ABC4 1
最佳答案
使用duplicated的取反:
df['unique'] = (~df.ID.duplicated()).astype(int)
print(df)
输出量
ID unique
0 ABC1 1
1 ABC1 0
2 ABC1 0
3 ABC2 1
4 ABC3 1
5 ABC3 0
6 ABC4 1
关于python - Python:计算具有重复值的列中每个唯一值的第一个实例,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59057640/