【问题标题】:How to delete duplicated values in python?如何删除python中的重复值?
【发布时间】:2020-05-12 16:55:29
【问题描述】:

I have added an excel image here!我使用 python 对 Excel 表进行了重复数据删除。重复数据删除后,它有一个cluster id 列。一组重复行的簇 id 可以为 0,表示这 n 行具有相同的值。现在,对于唯一的行,集群 id 没有值,甚至没有,它只是空的。 我只想删除那些具有cluster id 值的行,以便我可以拥有所有不同的行。对于重复数据删除,我使用的是pandas_dedupe 库。

import pandas as pd
import pandas_dedupe as pdd
df=pd.read_csv('sample.csv')
df=pdd.dedupe_dataframe(df,['firstname','lastname','gender','zipcode','address'])
#deletion part to be written here
df.to_csv('sample_deduplicated.csv')

【问题讨论】:

  • 重写你的帖子,包括sn-p代码
  • 你能发布你的代码示例吗?
  • 你需要drop_duplicates(subset=['cluster_id'])查看文档
  • @Datanovice,这将删除所有数据。我想保留所有具有唯一集群 ID 值的行以及所有没有集群 ID 值的行。
  • @DejeneT,补充说!

标签: python pandas duplicates record-linkage


【解决方案1】:

据我了解,您希望保留所有具有空 cluster id 列的行并删除在 cluster id 列中具有值的行。

您可以简单地将过滤条件设置为只取空的cluster id 行。

df[df['cluster id'].isna()]

关于Series.isna()的参考请参考documentaion

【讨论】:

  • 这仅保留具有名字的行:Babita 和 Vikas,而我想保留所有唯一值并仅删除重复项。请参阅我发布的屏幕截图。不过感谢您的帮助!
猜你喜欢
  • 2018-08-30
  • 1970-01-01
  • 2021-12-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多