Итак, у меня есть CSV-файл, полный транзакций, с именем поставщика в одном столбце и суммой транзакции в другом. Цель состоит в том, чтобы найти лучших поставщиков по общему количеству транзакций. Эта часть довольно проста, и у меня есть такой код:
with open('Transactions.csv') as Vendor_Data:
file_reader = csv.reader(Vendor_Data, delimiter=',')
vendor_dict = {}
next(file_reader)
for row in file_reader:
if row[3] not in vendor_dict:
vendor_dict[row[3]] = [0, 0]
vendor_dict[row[3]][1] += round(float(row[1]), 2)
else:
vendor_dict[row[3]][0] += 1
vendor_dict[row[3]][1] += round(float(row[1]), 2)
Проблема в том, что существует много записей, в которых один и тот же поставщик написан несколько иначе («Delta Airlines» против «Delta Air»). Каков наилучший способ обнаружения этих похожих имен строк (скажем, с помощью Fuzzywuzzy) при циклическом просмотре файла CSV и консолидации экземпляра транзакции и сумм?