我有一个看起来像这样的数据框:
df = pd.DataFrame({'key': ['K0', 'K0', 'K0', 'K1'],'cat': ['C0', 'C0', 'C1', 'C1'],'B': ['A0', 'A1', 'A2', 'A3']})
df
Out[15]:
key cat B
0 K0 C0 A0
1 K0 C0 A1
2 K0 C1 A2
3 K1 C1 A3
是否可以将其转换为:
key cat B
0 K0 C0 A0
1 A1
2 K0 C1 A2
3 K1 C1 A3
我想避免一次又一次显示
key
和cat
的相同值,并且key
更改后再次出现cat
。这是出于excel的目的,因此我需要与以下设备兼容:
style.apply(f)
to_excel()
最佳答案
您可以在列的子集上使用duplicated
查找重复值:
cols = ['key', 'cat']
df.loc[df.duplicated(subset=cols), cols] = ''
key cat B
0 K0 C0 A0
1 A1
2 K0 C1 A2
3 K1 C1 A3
关于python - 在 Pandas 中一次在列中显示共同值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56788563/