Alexander Foerster created TEXT-191:
---------------------------------------

             Summary: JaroWinklerDistance returns the same values as 
JaroWinklerSimilarity
                 Key: TEXT-191
                 URL: https://issues.apache.org/jira/browse/TEXT-191
             Project: Commons Text
          Issue Type: Bug
    Affects Versions: 1.9
         Environment: Windows 10
AdoptOpenJDK 11
            Reporter: Alexander Foerster


 

The following two code snippets give the same output:
{code:java}
// checking similarity
JaroWinklerSimilarity jws = new JaroWinklerSimilarity();
System.out.println("SIMILARITY: " + jws.apply("foo", "foo") + "  " + 
jws.apply("foo", "bar"));
// SIMILARITY: 1.0  0.0{code}
{code:java}
// checking distance
JaroWinklerDistance jwd = new JaroWinklerDistance();
System.out.println("DISTANCE: " + jwd.apply("foo", "foo") + "  " + 
jwd.apply("foo", "bar"));
// DISTANCE: 1.0  0.0
{code}
I would expect the distance to be 1 - similarity, but as you can see distance 
and similarity return the same values.

 

An easy fix would be to use the commented lines in JaroWinklerDistance.java:
{code:java}
// JaroWinklerSimilarity similarity = new JaroWinklerSimilarity();
// return 1 - similarity.apply(left, right);
{code}
and maybe make _similarity_ be a final property/variable.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to