Chciałbym wiedzieć, jak dopasować adresy pocztowe, gdy ich format różni się lub gdy jeden z nich jest źle zapisany.
Do tej pory znalazłem różne rozwiązania, ale myślę, że są one dość stare i niezbyt wydajne. Jestem pewien, że istnieją lepsze metody, więc jeśli masz dla mnie referencje, jestem pewien, że jest to przedmiot, który może zainteresować kilka osób.
Rozwiązanie, które znalazłem (przykłady znajdują się w R):
Odległość Levenshteina, która jest równa liczbie znaków, które musisz wstawić, usunąć lub zmienić, aby przekształcić jedno słowo w drugie.
agrep("acusait", c("accusait", "abusait"), max = 2, value = TRUE)
## [1] "accusait" "abusait"
Porównanie fonemów
library(RecordLinkage)
soundex(x<-c('accusait','acusait','abusait'))
## [1] "A223" "A223" "A123"
Zastosowanie korektora pisowni (ostatecznie bayesowskiego, takiego jak Peter Norvig) , ale wydaje mi się , że nie jest zbyt wydajny pod adresem.
Myślałem o skorzystaniu z sugestii Google, ale podobnie nie jest to bardzo skuteczne w przypadku osobistych adresów pocztowych.
Możesz sobie wyobrazić stosowanie podejścia nadzorowanego przez uczenie maszynowe, ale musisz zapisać błędnie napisane żądania użytkowników, co nie jest dla mnie opcją.