Beispiel #1
0
 def levenshtein_distance(self, other_word: str) -> int:
     """
     Basic use of Levenshtein distance function
     :param other_word:
     :return:
     """
     return Levenshtein.Levenshtein_Distance(self.word, other_word)
Beispiel #2
0
 def test_levenshtein_distance(self):
     """Test for Levenshtein Distance between two words"""
     l = Levenshtein()
     dist = l.Levenshtein_Distance(
         "now grete glorious god through grace of himselven",
         "and the precious prayer of his pris moder")
     self.assertEqual(dist, 36)
Beispiel #3
0
def compute_distance_matrix(proper_nouns: List[str]):
    """
    Distance matrix with Levenshtein distance.

    :param proper_nouns: Items of proper_nouns must be unique
    :return:
    """
    levenshtein = Levenshtein()

    # We try to keep regroup different forms of a lemma
    distance_matrix = np.zeros((len(proper_nouns), len(proper_nouns)))

    for i in range(len(proper_nouns)):
        for j in range(len(proper_nouns)):
            distance_matrix[i, j] = levenshtein.Levenshtein_Distance(proper_nouns[i], proper_nouns[j])

    return distance_matrix