如何在数据集中应用具有相似名称(如McDonald和Mc DOnald的字符串)的聚类,并且如果字符串相同(如sam和其他的sam),则如何再次基于值或价格进行聚类 例如- 考虑一个包含10个元素的数据表
name price
ram 200
shyam 150
ram12 59
gita 45
ram 2 45
g11ita 23
john2 32
john 7
jonh21 8
jonh 38
ram22 3
然后分组应该
ram 200
ram12 59
ram 2 45
ram22 3
john2 32
jonh 37
john 7
john21 8
gita 45
g11ita 23
我使用了模糊聚类和Levenheneitein距离的字符串聚类,但是它只能聚类字符串,而不能聚类价格 如何对第一个字符串进行聚类,如果相同则对价格进行聚类
答案 0 :(得分:0)
您将需要仔细平衡文本相似度和数字相似度的阈值。不会有一个简单的解决方案,除非您有大量数据,否则手动方法可能是最好的。
短字符串的文本相似性非常不可靠。
例如:“ dog”和“ fog”仅相差一个字母,但很少出现错别字。它们的Levenshtein距离为1,最小的非零值!因此,如果您依赖Levenshtein,则将有很多误报-如果您手动验证它们,但不进行自动处理,就可以了。
因此,至少您需要使用一些知识来了解(a)不太可能拼错的现有单词,(b)常见拼写错误和(c)语音相似性,以估计单词拼写的可能性,( d)键盘相似度,一个单词输错的可能性有多大...