Я получаю сообщение об ошибке при использовании библиотеки FuzzyWuzzy в Python 3. Я работаю с файлами CSV, также используя библиотеку Pandas.TypeError при использовании FuzzyWuzzy и Pandas для сопоставления строк
У меня есть следующие данные в моем файле CSV:
> BBL CorporationName CorporationName2
1 123 Elm St LLC 123 Elm St LLC
2 ABC Realty, INC ABC Realty, INC
3 123 Elm Street, LLC 123 Elm Street, LLC
4 ABC Realty Incorporated ABC Realty Incorporated
Столбцы CorporationName и CorporationName2 фактически то же самое. Каждый из них содержит названия предприятий, связанных с недвижимостью. Эти имена этих предприятий появляются несколько раз в каждом столбце, но, как вы можете видеть, они иногда появляются в несколько разных проявлениях.
Моя цель - взять каждую строку в имени корпорации и сравнить ее со всеми строками в корпорацииName2. Я бы хотел, чтобы FuzzyWuzzy вернул 5 наиболее важных строк из КорпорацииName2 (т. Е. Возможные варианты этого имени). Это только первый шаг в массивной задаче сопоставления строк, которой я подвергся.
> import pandas as pd
from fuzzywuzzy import process
from fuzzywuzzy import fuzz
import csv
df = pd.read_csv('yescorp_fuzz.csv')
test_list = df.CorporationName
test_list1 = df.CorporationName1
def ownermatch():
for i in test_list:
result = process.extract(i,test_list1, limit=5)
print(result)
ownermatch()
Это ошибка отслеживающий:
Traceback (most recent call last):
File "C:/Python34/YesCorpFuzzy4_15.py", line 17, in <module>
ownermatch()
File "C:/Python34/YesCorpFuzzy4_15.py", line 13, in ownermatch
result = process.extract(i,test_list1, limit=5)
File "C:\Python34\lib\site-packages\fuzzywuzzy\process.py", line 103, in extract
processed = processor(choice)
File "C:\Python34\lib\site-packages\fuzzywuzzy\utils.py", line 84, in full_process
string_out = StringProcessor.replace_non_letters_non_numbers_with_whitespace(s)
File "C:\Python34\lib\site-packages\fuzzywuzzy\string_processing.py", line 25, in replace_non_letters_non_numbers_with_whitespace
return cls.regex.sub(u" ", a_string)
TypeError: expected string or buffer
>>>
Чтобы быть абсолютно честным, я не уверен, что здесь происходит. Я тоже не мог найти в Интернете.
Любая помощь, которую вы могли бы предоставить, была бы весьма признательна.
Спасибо!
Привет @ Сэм, как ни странно это все еще возвращаются ту же ошибку. Видимо, это нечто другое. – Steven
@Steven вы могли бы иметь другие типы данных в вашем df? – Sam
, который, казалось, был этим. Благодаря! – Steven