Essayer différentes méthodes
Parfait, vous avez déjà découvert plusieurs méthodes pour calculer des distances entre chaînes. Le choix de la méthode dépend de nombreux facteurs ; il est donc utile d’expérimenter un peu avec les différentes méthodes et leurs paramètres pour mieux les connaître. Dans cet exercice, vous utiliserez le terme de recherche "Marya Carey" — une version mal orthographiée du nom "Mariah Carey". À quel point ce nom mal saisi est-il similaire au vrai, selon différentes méthodes de distance de chaîne ?
L’objectif est de trouver des paramètres qui donnent une faible distance pour les deux noms décrits ci-dessus, tout en conservant une grande distance par rapport aux autres noms de la liste qui ne correspondent pas à la personne recherchée.
Cet exercice fait partie du cours
Expressions régulières intermédiaires en R
Instructions
- Générez les q-grammes pour des longueurs de sous-chaînes de
1et2. - Calculez la distance de chaîne entre
searchetnamesavec la méthode q-grammes pour des longueurs de sous-chaînes de1et2. - Calculez la distance de chaîne entre
searchetnamesen utilisant la méthode"osa".
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
search <- "Mariah Carey"
names <- c("M. Carey", "Mick Jagger", "Michael Jackson")
# Pass the values 1 and 2 as "q" and inspect the qgrams
qgrams("Mariah Carey", "M. Carey", q = ___)
qgrams("Mariah Carey", "M. Carey", q = ___)
# Try the qgram method on the variables search and names
stringdist(___, ___, method = "___", q = 1)
stringdist(___, ___, method = "___", q = 2)
# Try the default method (osa) on the same input and compare
stringdist(___, ___, method = "___")