У меня есть группа имен людей, привязанных к их соответствующим идентификационным номерам (например, номер социального страхования/национальный идентификационный номер/номер паспорта). Однако из-за дублирования один идентификационный номер может содержать до 100 имен, которые могут быть похожими или совершенно разными. Например. ID 221 может иметь имена Richard Parker, Mary Parker, Aunt May, Parker Richard, [email protected] Richard
и т. Д. Некоторые опечатки, но некоторые совершенно разные имена.Сравнение сходства между несколькими строками со случайной начальной точкой
Первоначально я хочу отображать только 3 (или аналогичное небольшое число) имен, которые могут быть как можно более отличающимися от остальных, чтобы предупредить этого зрителя о том, что множественные имена не могут быть опечатками, но могут быть даже случай кражи идентификационной информации или небрежного захвата данных или чего-либо еще!
Я прочитал алгоритм обнаружения сходства, и в настоящее время я смотрю на этот one, который позволит вам вычислить оценку, а оценка 1 означает, что две строки одинаковы, а нижний балл означает, что они отличаются друг от друга , В моем случае использования, как я могу пройти через 100 имен и отобразить 3, которые являются самыми разными? Алгоритм для этого просто ускользает от моего разума, так как я чувствую, что мне нужна начальная точка, а затем смотри и сравнивайся со всеми остальными и снова зацикливайся и т. Д. И т. Д.
именно то, что я искал. Благодарю. – lukik
Привет. У меня есть дополнительный вопрос, исходящий из вашего ответа о сортировке словаря с помощью itertools. Я не спрашивал об этом здесь, поэтому было бы непрактично отредактировать вопрос. Новый вопрос можно увидеть здесь (http://stackoverflow.com/q/18699961/1082673). Спасибо за вашу помощь. – lukik