我想要根据单个列来删除特定列的重复值,同时保留行中的其他内容。
df = pd.DataFrame({'A':[1,2,3,4],'B':[5,5,6,7],'C':['a','a','b',c'], D:['c','d','e','f']})
我希望能够删除列C中的重复值所对应的A和B列中的数值,但是保留所有的D列数值。
预期输出结果:
A B C D
1 5 a c
d
3 6 b e
4 7 c f
我想要根据单个列来删除特定列的重复值,同时保留行中的其他内容。
df = pd.DataFrame({'A':[1,2,3,4],'B':[5,5,6,7],'C':['a','a','b',c'], D:['c','d','e','f']})
A B C D
1 5 a c
d
3 6 b e
4 7 c f
loc
df.loc[df.C.duplicated(), ['A', 'B']] = ''
A B C D
0 1 5 a c
1 a d
2 3 6 b e
3 4 7 c f
也可以使用np.nan
代替空字符串,以免影响数据类型。
np.nan
是更好的选择。 - anky