IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Distance de Jaro-Winkler entre deux textes ?


Sujet :

Python

  1. #1
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 388
    Points : 172
    Points
    172
    Par défaut Distance de Jaro-Winkler entre deux textes ?
    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.
    ['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
    Merci

  2. #2
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 462
    Points : 9 249
    Points
    9 249
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Je n'ai pas de solution concernant la distance de Jaro-Winkler, à part:
    - que c'est assez bien expliqué ici: https://en.wikipedia.org/wiki/Jaro%E...nkler_distance
    - et qu'il existe plusieurs modules dispo sur pypi, par exemple: https://pypi.python.org/pypi/jaro_winkler/1.0.2

    Si au lieu d'étudier cet algorithme il s'agit d'utiliser ce genre de fonction dans un programme, Python dispose déjà de SequenceMatcher dans son module difflib. Je l'utilise assez souvent pour des recherches, et ça marche plutôt bien.
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

  3. #3
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 388
    Points : 172
    Points
    172
    Par défaut
    Merci bcp pour votre réponse

Discussions similaires

  1. Distance de Kolmogorov Smirnov entre deux courbes
    Par julinge dans le forum MATLAB
    Réponses: 3
    Dernier message: 22/10/2014, 14h49
  2. Faire un espace entre deux textes.
    Par dririze dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 29/09/2010, 13h21
  3. [WD14] Recherche d'un mot entre deux textes
    Par wojc01 dans le forum WinDev
    Réponses: 6
    Dernier message: 09/11/2009, 19h38
  4. chercher le Max entre deux Text Box
    Par amne26 dans le forum IHM
    Réponses: 4
    Dernier message: 29/09/2008, 23h33
  5. Différence entre deux textes
    Par Oberown dans le forum Langage
    Réponses: 2
    Dernier message: 16/02/2006, 11h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo