VBA : Exemple comparatif des indices de similarité

Après avoir vu différents algorithmes de similarité dans des billets précédents, je vous propose un petit comparatif à travers un exemple qui consiste à trouver le doublon de restaurants par leur nom, adresse, téléphone et type de cusine.
Lire la suite

VBA : Distance de Jaro-Winkler

Cet algorithme mesure la similarité entre deux chaînes de caractères pour la recherche de doublons par exemple. Tout comme les algorithmes de Damerau-Levenshtein et les indices de similarité Cosinus, Dice, Jaccard…, la distance est normalisée entre 0 et 1. Plus la similarité est forte plus la distance tend vers 1.
Lire la suite

Indices de similarité entre deux chaînes de caractères

Après l’algorithme de Damerau-Levenshtein qui mesure la distance minimale d’édition entre deux textes, je présente un algorithme plus simple et donc plus rapide qui calcule différents indices de similarité (Cosinus, Dice, Jaccard, Kulczynski,…) à partir de n-grammes (n-grams/q-grams en anglais) ou sous-séquences continues de caractères.
Lire la suite

Similarité entre deux chaînes de caractères

Pour tenter de réduire l’imperfection des ITCC, IPCC, ITPCC voire ITPCCC et plus généralement ICC(*), de nombreux algorithmes sont proposés (Soundex, Jaro-Winkler, …) et l’algorithme de Damerau-Levenshtein que j’ai implémenté ici en VBA.
Voir aussi le billet sur les indices de similarité et le billet sur la distance de Jaro-Winkler.
Lire la suite