Bonjour,
J'ai implémenté la distance de Jaro-Winkler en Python et ça marche pour deux mots.
L'exercice c'est que les mots doivent être des textes. Le souci c'est que je ne sais pas si je dois prendre en compte les espaces, la ponctuation, les retours à la ligne.... etc
Par exemple :
- En enlevant les espaces, le résultat est que la matrice de correspondance entre BONJOUR et BANJOUR est égale à 0 car le mot est considéré comme une lettre qui est différente d'une autre lettre.
- En prenant en compte les espaces, le résultat est la comparaison de chaque lettre comme c'est le cas avec deux mots.
Est-ce que la deuxième façon de faire "sans enlever les espaces" est plus juste ?
Finalement, dois-je garder tout ?
Voilà le résultat pour deux chaînes de caractères sans enlever l'espace.
Merci['B', 'o', 'n', 'j', 'o', 'u', 'r', ' ', 't', 'o', 'u']
['B', 'o', 'n', 'j', 'o', 'u', 'r', ' ', 't', 'o', 'u', 'a']
Distance d'éloignement maximale entre les mots doit être <= : 5.0
Matches = 11
Supression des mots non correspondants:
Mot 1 devient = ['B', 'o', 'n', 'j', 'o', 'u', 'r', ' ', 't', 'o', 'u']
Mot 2 devient = ['B', 'o', 'n', 'j', 'o', 'u', 'r', ' ', 't']
t = 1.0
Distance de Jaro = 0.9419191919191918
Prefixe : 9
Distance de Jaro Winkler : 0.9941919191919192
Partager