Tìm khớp cho một lỗi gõ khi tìm kiếm
Dữ liệu do con người nhập rất dễ sai. Mọi người có thể gõ sai đủ thứ, kể cả tên hoặc địa chỉ, và bạn — với vai trò nhà khoa học dữ liệu — cần tìm cách xử lý. Tính khoảng cách chuỗi là một cách để giải quyết vấn đề này.
Trong vector nhỏ usernames, bạn sẽ thấy ba cái tên khác nhau. Nhiệm vụ của bạn là tìm tên gần nhất có thể với tên được nhập "Emile Brown". Bạn có tìm được một tên tương tự trong vector usernames không? Hãy dùng amatch() để tìm trong vector và in ra một gợi ý giống như bạn thường thấy trên Google.
Bài tập này là một phần của khóa học
Regular Expressions nâng cao trong R
Hướng dẫn bài tập
- Thiết lập khoảng cách chỉnh sửa tối đa cho hàm
amatch()là1. - Dùng giá trị trả về của
amatch()được lưu trongclosest_indexđể in ra tên trongusernames.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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 = ___
))