Расстояние / нечеткое сопоставление 2 столбцов с 2 другими столбцами в R - PullRequest
0 голосов
/ 14 января 2020

в моем упрощенном примере у меня есть фрейм данных с четырьмя разными столбцами. Я хочу, чтобы иметь возможность сопоставить main_name и main_dob вместе с вторичным_имя и вторичным_добом. Фактический порядок строк не имеет значения, поэтому, если есть совпадение в строке 3 и строке 4, я бы хотел, чтобы они возвращали одно и то же значение и показывали, что там есть совпадение.

Ниже мои образцы данных.

main_name <- c("Arthur Lee", "Robert Frost", "Sarah Doe", "Elizabeth Smith")
main_dob <- c("3/3/93", "10/21/70", "11/25/88", "4/2/92")

secondary_name <- c("David Lee", "Robert L. Frost", "Elizabeth Smith", "Mark Roger")
secondary_dob <- c("4/4/95", "10/21/70", "4/2/92", "11/25/88")

df <- data.frame(main_name,main_dob,secondary_name,secondary_dob)

Я бы хотел, чтобы результаты показали мне, что ближайший матч Артура Ли - это Дэвид Ли, а также расстояние между ними, а также расстояние между их днями рождения. Далее, я хотел бы видеть, что совпадение Роберта Фроста существует, но расстояние немного, так как имя_представителя содержит его второе имя, но день рождения помогает мне проверить, что это тот же человек. Далее нет Сары Доу, так что я бы показал все, что является ближайшим совпадением и ближайшим днем ​​рождения. Наконец, я хотел бы, чтобы Элизабет Смит совпала с Элизабет Смит, даже если они находятся в разных строках двух данных.

Я думаю об использовании пакета jaro-winkler (jw) для расстояния, но я открыт для любые идеи и помощь.

...