Соответствие строк в кадре данных панд с использованием fuzzywuzzy - PullRequest
1 голос
/ 13 июня 2019

У меня есть два кадра данных: Instructor_Info и Operator_Info

Instructor_Info содержит столбец с именами и именем оператора, а Operator_Info также имеет столбец с именами. Все имена в Instructor_Info имеют ассоциированное имя в Информации оператора. Я хочу использовать fuzz.token_sort_ratio (), чтобы найти эти совпадения, сравнивая каждое имя в Instructor_Info с каждым именем в Operator_Info и сохраняя строку с наибольшим счетом в столбце OperatorName.

Это то, что я имею до сих пор:

for index, row in Instructor_Info.iterrows():
    match = 0
    for index1,row1 in Operator_Info.iterrows():
        if fuzz.token_sort_ratio(row['Names'],row1['Names']) > match:
            row['OperatorName'] = row1['Names']

Этот код работает очень медленно и получает несколько ложных совпадений (я могу исправить это вручную, поэтому скорость является основной проблемой). Если у кого-то есть более быстрые идеи, это будет высоко ценится. Заранее спасибо.

...