首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >除了Jaro算法之外,还有其他方法可以找到低开销和高精度记录之间的相似性度量吗?

除了Jaro算法之外,还有其他方法可以找到低开销和高精度记录之间的相似性度量吗?
EN

Stack Overflow用户
提问于 2018-11-26 17:40:08
回答 1查看 494关注 0票数 0

我试图用python中的Jaro算法实现字符串之间的相似性度量,我正在使用anaconda环境并将其部署到阿里巴巴云ECS实例中。

我用来查找相似性的示例代码:

代码语言:javascript
运行
复制
from pyjarowinkler import distance
print ("Average Score ---->", distance.get_jaro_distance("hello", "haloa"))

Average Score ---->0.76

当我处理600 K的记录时,需要超过20分钟。处理大量记录是非常缓慢的。有没有其他方法可以找到低开销和高精度的记录之间的相似性度量?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-28 17:06:13

Jaro Winkler距离,它表示两个字符串之间的相似性评分。Jaro度量是每个文件中匹配字符的百分比和转换字符的加权总和。Winkler增加了此度量,以匹配初始字符。

最初的实现是基于在维基百科上可以找到的Jaro相似算法文章。这个Python版本的原始实现是基于Apache StringUtils库

Unittest与您在StringUtils库中找到的类似,用于验证实现。

代码语言:javascript
运行
复制
>>> from pyjarowinkler import distance
>>> # Scaling is 0.1 by default
>>> print distance.get_jaro_distance("hello", "haloa", winkler=True, scaling=0.1)
0.76
>>> print distance.get_jaro_distance("hello", "haloa", winkler=False, scaling=0.1)
0.733333333333

此链接获得更详细的信息

我希望这将有助于您的查询。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53486374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档