Python pandas:标记重复行

4
我使用以下代码来表示重复行。
df['duplicate']=df.Column_A.duplicated()

然而,当我查看数据框时,我看到了以下内容:
Column_A | duplicate
AAA        False
ABC        False
ABC        True

我希望第2行也是True,这样我就可以轻松地过滤重复行。我该如何实现?
2个回答

13

根据文档,使用keep参数并设置为False。如您所见,默认值为first

import pandas as pd

df = pd.DataFrame({'Column_A': ['AAA', 'AAB', 'AAB', 'AAC']})
df['duplicate'] = df.duplicated(keep=False)

print(df)

     Column_A  duplicate
0    'AAA'     False
1    'AAB'     True
2    'AAB'     True
3    'AAC'     False

5

我想像自己迷失在荒野中,而我能用来生存的只有 pd.factorizenp.bincount
请不要接受这个答案

f, u = pd.factorize(df.Column_A.values)
df.assign(duplicate=np.bincount(f)[f] > 1)

  Column_A  duplicate
0      AAA      False
1      ABC       True
2      ABC       True

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接