我有一个像这样的数据框架
sku
FAT-001
FAT-001
FAT-001
FAT-002
FAT-002
我想根据重复的sku值创建另一个列。在up-sku列中,第一个重复值必须为空。我想在我的up-sku列中只保留重复的sku。所以我期望的数据框是这样的:
sku dup-sku
FAT-001 #empty
FAT-001 FAT-001
FAT-001 FAT-001
FAT-002 #emty
FAT-002 FAT-002
FAT-003
dup-sku列中duplicate的第一个值必须为空
这对你的例子有用吗?
df['dup']=df['sku']
df['dup'].loc[~df['sku'].duplicated(keep='first')]=''
给定示例的另一种方法:
df['dup-sku'] = df.where(df==df.shift(),'')
>>> df
'''
sku dup-sku
0 FAT-001
1 FAT-001 FAT-001
2 FAT-001 FAT-001
3 FAT-002
4 FAT-002 FAT-002
5 FAT-003