[R-br] Identificando divergências entre nomes

Paulo Dick paulopcdick em gmail.com
Quinta Agosto 24 18:43:38 -03 2017


Prezados,

Gostaria de sugestões para encarar o seguinte problema:

Estou uma base que contém um código identificador e o nome da pessoa.
Teoricamente, cada código é único e representa uma única pessoa, mas posso
ter falhas. Além disso, posso ter problema de digitação.

Segue exemplo:

    id                  nome
1  100            JOAO SILVA
2  100            SILVA JOAO
3  101        MARIA DA SILVA
4  101 MARIA SOARES DA SILVA
5  102           JOSE CANCIO
6  102       LEONORA FURTADO
7  102       LEONORA FURTADO
8  103         JOSE TRINDADE
9  103          JOSE TRINDDE
10 104           PAULO SILVA
11 105            LUIZ COSTA
12 106         ISABEL CHAGAS
13 106         CHAGAS ISABEL
14 107         VANIA VALERIA
15 107         SANDRA SANTOS

Nesse caso, no id 100 tenho problema de digitação, mas se trata da mesma
pessoa. O mesmo ocorre nos ids 101, 103 e 106. No id 103 tenho um erro de
digitação. No id 102 tenho duas pessoas diferentes, assim como no 107.

Como eu poderia automatizar a avaliação de quais ids tenho pessoas
diferentes?

> dput(teste)
structure(list(id = c(100, 100, 101, 101, 102, 102, 102, 103,
103, 104, 105, 106, 106, 107, 107), nome = structure(c(3L, 13L,
9L, 10L, 4L, 7L, 7L, 5L, 6L, 11L, 8L, 2L, 1L, 14L, 12L), .Label = c("CHAGAS
ISABEL",
"ISABEL CHAGAS", "JOAO SILVA", "JOSE CANCIO", "JOSE TRINDADE",
"JOSE TRINDDE", "LEONORA FURTADO", "LUIZ COSTA", "MARIA DA SILVA",
"MARIA SOARES DA SILVA", "PAULO SILVA", "SANDRA SANTOS", "SILVA JOAO",
"VANIA VALERIA"), class = "factor")), .Names = c("id", "nome"
), row.names = c(NA, -15L), class = "data.frame")

Obrigado e abraços

*Paulo Dick*
Estatístico / Epidemiologia em Saúde Pública
Tel.: (55 21) 99591-2716
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20170824/b3c054ad/attachment.html>


Mais detalhes sobre a lista de discussão R-br