熊猫模糊检测重复

时间:2016-09-14 12:13:46

标签: python pandas fuzzy-search locality-sensitive-hash record-linkage

如何在pandas中使用模糊匹配来检测重复的行(有效地)

enter image description here

如何找到一列与所有其他列的重复项,而没有一个巨大的for循环转换row_i toString()然后将它与其他所有列进行比较?

3 个答案:

答案 0 :(得分:1)

不是特定的熊猫,但在python生态系统中,dedupe python library似乎可以做你想要的。特别是,它允许您分别比较行的每一列,然后将信息组合成匹配​​的单个概率分数。

答案 1 :(得分:0)

现在有了一个软件包,可以更轻松地将dedupe library与熊猫一起使用:pandas-dedupe

(我是原始重复数据删除库的开发人员,但不是pandas-dedupe软件包的开发人员)

答案 2 :(得分:0)

pandas-dedupe是您的朋友在这里。您可以尝试执行以下操作:

import pandas as pd
from pandas_deudpe import dedupe_dataframe

df = pd.DataFrame.from_dict({'bank':['bankA', 'bankA', 'bankB', 'bankX'],'email':['email1', 'email1', 'email2', 'email3'],'name':['jon', 'john', 'mark', 'pluto']})

dd = dedupe_dataframe(df, ['bank', 'name', 'email'], sample_size=1)

如果您还想为相同实体设置规范名称,请设置canonicalize=True

[我是pandas-dedupe的贡献者之一]