将相似的用户名分组在一起

问题描述

我的数据如下。如您所见,第一个条目是“ tim”,与tim.rand和timrook匹配。同样,pankit090与pankit001,pankit002,pankit003,pankit004,pankit005匹配

My data

我希望结果如下所示

Result after grouping of names

我能够实现的是

emailsdb = database['Names'].values.tolist()
list = []
for email in emailsdb :
    newlookup = emailsdb.copy()
    newlookup.remove(email)
    result = process.extractBests(email,newlookup,score_cutoff=85,limit=50)
    if len(result) > 0: 
        list.append(email)
        list.append(result)

我得到的是

['tim',[('tim.rand',90),('timrook',90)],'tim.rand',[('tim','pankit090',[('pankit001',89),('pankit002',('pankit003',('pankit004',('pankit005',89)],'timrook','pankit001',[('pankit090','pankit002',('pankit001',...........
...........

需要的建议是达到最终结果如上图所示有2个订单项。 fuzzywuzzy能够找到匹配的用户名的人。

还需要计算组中不同的TID和不同的PID的数量

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)