Trouver une correspondance à une faute de frappe
La saisie humaine est très sujette aux erreurs. Les gens font des fautes de frappe dans toutes sortes de textes, y compris leur nom ou leur adresse, et, comme scientifique des données, vous devez savoir comment gérer cela. Calculer des distances entre chaînes est une façon d'aborder ce problème.
Dans notre petit vecteur usernames, vous trouverez trois noms différents. Votre tâche consiste à repérer le nom le plus proche possible du nom saisi "Emile Brown". Pouvez-vous trouver un nom ressemblant dans le vecteur usernames? Utilisez amatch() pour fouiller le vecteur et affichez une recommandation semblable à ce que vous avez déjà vu sur Google.
Cette activité fait partie du cours
Expressions régulières intermédiaires en R
Instructions de l’exercice
- Indiquez la distance d'édition maximale pour la fonction
amatch()à1. - Utilisez la valeur de retour de
amatch(), stockée dansclosest_index, pour afficher le nom dansusernames.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
usernames <- c("Max Power", "Emilie Brown", "Max Mustermann")
# Search usernames with a maximum edit distance of 1
closest_index <- amatch(
x = "Emile Brown",
table = usernames,
___ = ___,
method = "lv"
)
# Print the matched name in usernames at closest_index
print(glue(
"Did you mean {name_matched}?",
name_matched = ___
))