écnicas para encontrar registros quase duplicad

Estou tentando limpar um banco de dados que, ao longo dos anos, adquiriu muitos registros duplicados, com nomes ligeiramente diferentes. Por exemplo, na tabela de empresas, existem nomes como "Some Company Limited" e "SOME COMPANY LTD!".

Meu plano era exportar as tabelas incorretas para R, converter nomes em minúsculas, substituir sinônimos comuns (como "limited" -> "ltd"), retirar caracteres não alfabéticos e usaragrep para ver o que parece semelhante.

Meu primeiro problema é queagrep aceita apenas um único padrão para corresponder, e o loop de todos os nomes de empresas para coincidir com os outros é lento. (Algumas tabelas a serem limpas terão dezenas, possivelmente centenas de milhares de nomes para verificar.)

Eu olhei muito brevemente para otm pacote rtigo @JSS), e parece muito poderoso, mas voltado para a análise de grandes pedaços de texto, em vez de apenas nome

Tenho algumas perguntas relacionadas:

É otm pacote apropriado para esse tipo de tarefa?

Existe uma alternativa mais rápida paraagrep? (A referida função usa a distância de edição de Levenshtein, que é anedoticamente lenta.)

Existem outras ferramentas adequadas em R, além deagrep etm?

Eu deveria estar fazendo isso em R ou esse tipo de coisa deve ser feita diretamente no banco de dados? (É um banco de dados do Access, prefiro evitar tocá-lo, se possível.)

questionAnswers(4)

yourAnswerToTheQuestion