Find the Jaro Winkler Distance which indicates the similarity score between two Strings. The Jaro measure is the weighted sum of percentage of matched characters from each file and transposed characters. Winkler increased this measure for matching initial characters.
The original implementation is based on the Jaro Winkler Similarity Algorithm article that can be found on Wikipedia. This Python version of the original implementation is based on the Apache StringUtils library.
Unittest similar to what you will find in the StringUtils
library were used to validate implementation.
A limit of shorter / 2 + 1
is used in StringUtils, this differs from Wikipedia and also Winkler's paper, where a distance of longer / 2 - 1
is used, corresponding to positions of longer / 2
.
As of version 1.8
, the changed code now correctly works with the "CTRATE" - "TRACE"
example from Wikipedia.
>>> 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
Version: | 1.8 of 2016-03-22 |
---|