Hledání shody při překlepu ve vyhledávání
Lidský vstup je velmi náchylný k chybám. Lidé dělají překlepy ve všech možných textech – včetně vlastního jména nebo adresy – a jako datový analytik s tím musíš umět pracovat. Jedním ze způsobů, jak tento problém řešit, je výpočet vzdáleností mezi řetězci.
V malém vektoru usernames najdeš tři různá jména. Tvým úkolem bude najít jméno, které je nejpodobnější zadanému vstupu "Emile Brown". Dokážeš ve vektoru usernames najít podobné jméno? Použij funkci amatch() k prohledání vektoru a vypiš doporučení podobné tomu, které znáš z Googlu.
Toto cvičení je součástí kurzu
Intermediate Regular Expressions in R
Pokyny k cvičení
- Nastav maximální editační vzdálenost pro funkci
amatch()na hodnotu1. - Použij návratovou hodnotu funkce
amatch()uloženou v proměnnéclosest_indexk výpisu jména z vektoruusernames.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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 = ___
))