1 问题:
之前在python实现vlookup字符串模糊匹配及在实战中的应用(FuzzyWuzzy库)一文中详细介绍了FuzzyWuzzy的使用,以及封装了模糊匹配的函数,在今天的测试调用中发现了一个问题如下

仔细的观察可以发现,这里明明两个字段的数据不是相似或者相同,最后结果竟然匹配上了,原因就是在于之前的那个算法是基于待匹配字段的全部内容(df2),也就是说匹配时是拿左侧的字段的逐一元素(df1),与右侧的待匹配的全部字段中的元素进行模糊匹配的,核心代码中对应下面这部分

单独把这部分代码拿出来测试结果如下。输出比如第二行中matches一列中显示的结果为[(‘舾装车间’),100],说明左侧df1中的数据舾装车间(即受伤人员部门的信息),匹配右侧df2中的数据(肇事人员部分的信息),是可以完成匹配到的,也就是这里带待匹配的是df2中的一整列(下图中只截取输出部分内容)
Python FuzzyWuzzy库在多字段一一对应模糊匹配中的优化实践
本文针对FuzzyWuzzy模糊匹配在实际应用中出现的问题进行分析,揭示了当匹配时不正确地将整个数据列作为比较对象导致的误匹配。通过改进算法,确保了在多字段中实现一一对应匹配,优化后的函数能更好地处理不同字段的相似度计算,并给出完整的解决方案和测试结果。
订阅专栏 解锁全文
543

被折叠的 条评论
为什么被折叠?



