根据另一列的重复项删除一列的重复项,在熊猫中保留另一列重复项

时间:2021-03-05 07:41:55

标签: python pandas dataframe duplicates

保留 name 列的重复项,我想删除除 name 列的唯一值之外的 Count 列的重复项

这是一个示例 df

<头>
计数 姓名
是的 约翰
是的 结婚
是的 结婚
是的 石田
是的 石田
是的 石田

我想要的结果:

<头>
计数 姓名
是的 约翰
是的 结婚
结婚
是的 石田
石田
石田

#pandas #python

1 个答案:

答案 0 :(得分:0)

逻辑是

  • groupby()cumcount() Name
  • 的实例
  • 第 0 个实例,保持 Count 否则设置为 NaN
df = pd.read_csv(io.StringIO("""Count   name
yes jhon
yes marry
yes marry
yes ishita
yes ishita
yes ishita"""),sep="\t")

df.Count=np.where(df.groupby("name",as_index=False)["name"].cumcount()==0, df.Count, np.nan)

<头>
计数 名称
0 jhon
1 结婚
2 nan 结婚
3 ishita
4 nan ishita
5 nan ishita