我有一个包含多列的数据框,我想选择列的子集并从中删除重复的值。
我不想删除行,只想删除特定的列重复值。
我的数据框架如下:
我想删除这些列["PLACEMENT # NAME", "IMPRESSIONS","ENGAGEMENTS","DPEENEGAGEMENTS"]
中的重复项,因此我的外观看起来像。
请不要将此视为低估,因为我将来可能会被阻止提问,除了错别字,我在这里是新手
答案 0 :(得分:3)
以下是您的部分数据
import pandas as pd
df = pd.DataFrame({'PLACEMENT # NAME': ['Blend of Vdx Display', 'Blend of Vdx Display',
'Blend of Vdx Display', 'Blend of Vdx Display'],
'PRODUCT': ['Display', 'Display', 'Mobile', 'Mobile'],
'VIDEONAME': ['Features', 'TVC', 'video1', 'video2'],
'COST_TYPE': ['CPE', 'CPE', 'CPE', 'CPE'],
'Views': [1255, 10479, 156, 20],
'50_pc_video': [388, 2402, 38, 10],
'75_pc_cideo_10': ['', '', '', ''],
'IMPRESSIONS': [778732,778732,778732,778732],
'ENGAGEMENTS': [13373, 13373, 13373, 13373],
'DPEENGAGEMENTS': [7142, 7142, 7142, 7142]})
您可以使用.loc
+ .duplicated()
dup_cols = ['PLACEMENT # NAME', 'IMPRESSIONS', 'ENGAGEMENTS', 'DPEENGAGEMENTS']
df.loc[df.duplicated(dup_cols), dup_cols] = ''