R:将同一条目的不同拼写合并为一个

R: Consolidate different spellings of the same entry into one

我有一个按公司名称排序的数据集。有时名称拼写错误并显示为唯一条目:

Name
ABC Company
ABc Company
DEF Company
def compANY
Ddf Cmpany
abC comPany

事实上,这些条目是相同的两个公司名称的变体。这显然是我的初始数据集的问题,但我需要处理它才能正确处理我的数据。

Name
ABC Company
DEF Company

我不知道如何解决这个问题,除了使用长循环测试单词的修改版本与类似字典的数据结构。是否有用于拼写检查的库(甚至对公司名称有意义)?

我将不胜感激任何帮助,并且对任何包裹都没有偏好。 谢谢。

您可以使用 adist 来获得 近似字符串距离 可以在 hclust 中使用它来获得可以用 cutree.

hc <- hclust(as.dist(adist(Name, ignore.case = TRUE)))
Name[!duplicated(cutree(hc,k=2))] #For two groups
#[1] "ABC Company" "DEF Company"

数据:

Name <- c("ABC Company","ABc Company","DEF Company","def compANY","Ddf Cmpany","abC comPany")