Связывание справочников с разным написанием
Предложить соответствия по нескольким полям, дать подтвердить словарь и повторно применять его.
Методика и примеры
Связывание справочников с разным написанием
Варианты справочников сравниваются по нескольким полям с явными весами и порогом. Кандидаты показывают вклад символьной и токенной близости, затем подтверждаются человеком. Решения можно сохранить локально и повторно открыть как проект очереди.
Ограничения
Точные ключи сохраняют текстовые ID и ведущие нули. Пустые ключи требуют проверки. Нечёткие алгоритмы — до 200 000 пар / 5000 кандидатов с ручным подтверждением; оценка сходства не является вероятностью. ISO-время требует явной зоны. Никакие внешние системы не изменяются.
Проверяемый пример
Входные данные примера
id;name;email 1;Анна Иванова;anna@example.test 2;Анна Иванова;anna@example.test 3;Борис;b@example.test
| ID пары | Строка A | Строка B | Сходство, % | Основание | Запись A | Запись B |
|---|---|---|---|---|---|---|
| p-3-2 | 4 | 3 | 100.00 | name: 100.0% (символы 100%, токены 100%); email: 100.0% (символы 100%, токены 100%) | ["3","Борис","b@example.test"] | ["B","Борис","b@example.test"] |
| p-1-1 | 2 | 2 | 89.44 | name: 68.3% (символы 92%, токены 33%); email: 100.0% (символы 100%, токены 100%) | ["1","Анна Иванова","anna@example.test"] | ["A","Анна Ивнова","anna@example.test"] |
| p-2-1 | 3 | 2 | 89.44 | name: 68.3% (символы 92%, токены 33%); email: 100.0% (символы 100%, токены 100%) | ["2","Анна Иванова","anna@example.test"] | ["A","Анна Ивнова","anna@example.test"] |
Без общего ключа
При отсутствии общего ID кандидаты строятся по выбранным содержательным полям. Оценка и веса прозрачны, одинаковые оценки не считаются доказательством пары. Человек подтверждает соответствия и сохраняет решения отдельным файлом.
Ограничения
Точные ключи сохраняют текстовые ID и ведущие нули. Пустые ключи требуют проверки. Нечёткие алгоритмы — до 200 000 пар / 5000 кандидатов с ручным подтверждением; оценка сходства не является вероятностью. ISO-время требует явной зоны. Никакие внешние системы не изменяются.
Проверяемый пример
Входные данные примера
id;name;email 1;Анна Иванова;anna@example.test 2;Анна Иванова;anna@example.test 3;Борис;b@example.test
| ID пары | Строка A | Строка B | Сходство, % | Основание | Запись A | Запись B |
|---|---|---|---|---|---|---|
| p-3-2 | 4 | 3 | 100.00 | name: 100.0% (символы 100%, токены 100%); email: 100.0% (символы 100%, токены 100%) | ["3","Борис","b@example.test"] | ["B","Борис","b@example.test"] |
| p-1-1 | 2 | 2 | 89.44 | name: 68.3% (символы 92%, токены 33%); email: 100.0% (символы 100%, токены 100%) | ["1","Анна Иванова","anna@example.test"] | ["A","Анна Ивнова","anna@example.test"] |
| p-2-1 | 3 | 2 | 89.44 | name: 68.3% (символы 92%, токены 33%); email: 100.0% (символы 100%, токены 100%) | ["2","Анна Иванова","anna@example.test"] | ["A","Анна Ивнова","anna@example.test"] |
