1

Jaro-Winkler Similarity

Unsolved
NLP

Difficulty: 6 | Problem written by mesakarghm
Problem reported in interviews at

Amazon
Google

Jaro Winkler similarity is defined as follows: 

\(Sw = Sj + P * L * (1 – Sj) \)

 

  • Sj, is jaro similarity
  • Sw, is jaro- winkler similarity
  • P is the scaling factor (0.1 by default)
  • L is the length of the matching prefix upto a maximum 4 characters

Write a function jaro_winkler(s1,s2,jaro_dist) which calculates the Jaro-Winkler distance between the given two strings. jaro_dist here is the jaro distance between the given strings. 

Sample Input:
<class 'str'>
s1: arow
<class 'str'>
s2: arrow
<class 'float'>
jaro_dist: 0.93

Expected Output:
<class 'float'>
0.9440000000000001

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Dolorum distinctio explicabo et asperiores neque, velit provident architecto, temporibus provident et error. Optio eveniet dolore minus quas debitis delectus, labore repellat esse recusandae veritatis, eum voluptates ipsum cupiditate magnam maiores cumque iste, sed corrupti molestiae error consectetur, officia quasi odit quia maiores incidunt nihil iste? Tenetur accusamus eos molestiae nemo a placeat, amet a quos voluptates culpa ad dolore ea sapiente, provident saepe vero nemo at atque a vitae eos quia, quod voluptatum reiciendis ab dolorem explicabo labore? Modi sed praesentium omnis ea eveniet, quos eum ea odit aliquam distinctio veniam necessitatibus error sed inventore, dolores explicabo labore perferendis nesciunt esse laudantium beatae ipsam?

Odit eligendi ullam ut dicta optio quidem, accusamus illum dolor blanditiis dicta corporis earum, officia reiciendis ab distinctio, exercitationem fugiat commodi ea minus repellat velit? Harum quas aspernatur fugiat perspiciatis sapiente cupiditate, eum nesciunt qui harum quidem sint excepturi, optio qui ad suscipit voluptatem illo ducimus iusto, voluptate temporibus facilis itaque odit voluptatum asperiores hic incidunt praesentium eos fuga?

Dolore doloremque laborum id nihil, suscipit veniam atque animi aspernatur ipsum doloremque sit veritatis debitis molestias maxime, laudantium eum dolorem obcaecati totam aliquam optio quae. Repudiandae culpa non qui blanditiis atque, aperiam iure impedit sit ea quia ipsum doloremque adipisci eius animi vel, perferendis velit nulla esse, possimus dicta quas?

This is a premium feature.
To access this and other such features, click on upgrade below.

Ready.

Input Test Case

Please enter only one test case at a time
numpy has been already imported as np (import numpy as np)