Как реализовать фонетический алгоритм в Python для имен, состоящих из нескольких слов

Я прочитал кучу таких сообщений, как:

Я прошел через это и нашел двойной код метафона .

Но алгоритм двойного метафона возвращает кортеж для данной строки, предполагая, что строка является одним словом. Кто-нибудь знает фонетический алгоритм, который работал бы с несколькими словами с одним именем? Если нет, лучше всего просто написать сценарий для подсчета количества слов для каждого слова в этом столбце, а затем запустить двойной метафон для слова в ячейке, которое наиболее часто встречается в моем наборе данных?


person user1590499    schedule 18.09.2012    source источник
comment
Что вы подразумеваете под работой над несколькими словами в одном имени? Вы имеете в виду такие струнные, как John Bob?   -  person Hans Then    schedule 18.09.2012
comment
Кроме того, ответ во многом будет зависеть от того, чего вы хотите достичь. Что вы хотите делать с фонетическими совпадениями?   -  person Hans Then    schedule 18.09.2012
comment
Совершенно верно, хотя реальные примеры, как правило, больше похожи на Гамбургер Гамлет.   -  person user1590499    schedule 18.09.2012
comment
Я пытаюсь создать проверку ошибок, чтобы увидеть, правильно ли я сопоставил идентификатор с именами, написанными по-разному (по-разному из-за интернационализированного кода и различий в человеческом вводе для одного и того же объекта). Таким образом, каждое имя должно иметь уникальный первичный ключ, чтобы я мог правильно импортировать его в SQL.   -  person user1590499    schedule 18.09.2012
comment
Метафон не генерирует уникальные ключи. Коды слишком короткие для этого. Он используется как приближение к произношению. Вы можете использовать его как ключ сортировки, чтобы найти имена, которые произносятся одинаково. Имейте в виду, что он предназначен для работы с именами собственными (то есть человеческими именами), а не со словарными словами, такими как Burger King.   -  person Hans Then    schedule 18.09.2012
comment
Спасибо за разъяснения и помощь, Ганс.   -  person user1590499    schedule 18.09.2012
comment
Не могли бы вы описать, чего вы на самом деле пытаетесь достичь, возможно, на примере? Трудно понять, что на самом деле задает ваш вопрос.   -  person mpenkov    schedule 03.10.2012


Ответы (1)


на самом деле, неверно, что метафон или двойной метафон предназначены для работы только с именами собственными, а не со «словарными словами». метафон, двойной метафон и метафон 3 были разработаны для работы как с именами, так и со словами и разработаны для баз данных, содержащих оба

person lawrence philips    schedule 03.10.2012