按类别分组的 Python 模糊匹配



我正在尝试使用模糊匹配来清理数据。 df喜欢:

category description
1        almnd
1        almond
2        choc
2        choco

我希望所有类似的描述都在同一类别下是相同的描述,如下所示:

category description
1        almnd
1        almnd
2        choc
2        choc

Fuzzy-wuzzy 可能无法胜任这样的任务。你基本上需要根据相似性对单词进行聚类。查找一些建议和代码示例

https://stats.stackexchange.com/questions/123060/clustering-a-long-list-of-strings-words-into-similarity-groups

如果您发现单词和想法过多,为了轻松解决,请尝试Gensimmost_similar功能

Python:基于word2vec对相似的单词进行聚类

将数据帧转换为字典,然后重新映射。

dico = dict(df.to_dict('split')['data'])
df['description'] = pd["category"].map(dico)

如果数据帧实际上具有这两个以上的列,请检查字典提取时接受的答案。

要字典的数据帧,以便一列是键,另一列是值

最新更新