为搜索错别字找到匹配项
人工输入非常容易出错。人们会把各种文本打错,包括姓名或地址。作为数据科学家,您需要找到处理这些错误的方法。计算字符串距离就是一种可行方案。
在我们的小向量 usernames 中有 3 个不同的名字。您的任务是为输入的姓名 "Emile Brown" 找到最接近的匹配。您能在向量 usernames 中找到一个相似的名字吗?请使用 amatch() 搜索该向量,并打印出类似您在 Google 上看到的推荐结果。
本练习是课程的一部分
R 中级正则表达式
练习说明
- 将
amatch()函数的最大编辑距离指定为1。 - 使用存放在
closest_index中的amatch()返回值,打印usernames中对应的姓名。
交互式实操练习
通过完成这段示例代码来试试这个练习。
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 = ___
))