Ошибка FuzzyWuzzy: ПРЕДУПРЕЖДЕНИЕ: root: примененный процессор уменьшает входной запрос до пустой строки, все сравнения будут иметь оценку 0. [Запрос: '/'] - PullRequest
0 голосов
/ 18 сентября 2018

Попытка написать код, который будет сравнивать несколько файлов и возвращать наибольшее fuzzratio между несколькими вариантами.

Проблема в том, что я получаю сообщение об ошибке:

ПРЕДУПРЕЖДЕНИЕ: root: Примененный процессоруменьшает входной запрос до пустой строки, все сравнения будут иметь оценку 0. [Query: '/'] ПРЕДУПРЕЖДЕНИЕ: root: Применяемый процессор уменьшает входной запрос до пустой строки, все сравнения будут иметь оценку 0. [Query: '.']

И экспортированный файл по существу пуст.Любая подсказка, почему это происходит?

from fuzzywuzzy import fuzz, process
import csv

def readfile( filen ):
    with open(filen,'r') as f:
        contents = f.readlines()
    return contents

def write_fuzzy( fileo, file1, file2 ):
    matches=[]
    for  item1 in file1:
        matches.append(process.extract( str(item1), file2, limit=2 )[0][0])
    with open( fileo, 'w' ) as f:
        w = csv.writer( f, delimiter = ',' )
        w.writerows( matches )

filenames = ['Documents/test_CSV_1.csv',\
             'Documents/test_CSV_2.csv']

 file_contents = []
 for filen in filenames: 
    file_contents.append( readfile( filen ) )

write_fuzzy( 'out.csv', filenames[0], filenames[1] )

1 Ответ

0 голосов
/ 18 сентября 2018

Так что я думаю, что у меня есть ответ, который лежит в этой строке:

process.extract( str(item1), file2)

`file2 - это имя файла, я думаю, и оно просто берет имя файла, а не содержимое.

, так, это что-то вроде: process.extract( 'Coca Cola', 'Documents/test_CSV_1.csv')

Так что я считаю, что решение состоит в том, чтобы написать это так:

def write_fuzzy( fileo, file1, file2 ):
matches=[]
file1 = readfile(file1)
file2 = readfile(file2)
for item1 in file1:
matches.append(process.extract( str(item1), file2, limit=2 )[0][0])
with open( fileo, 'w' ) as f:
    w = csv.writer( f, delimiter = ',' )
    w.writerows( matches )

Экспорт файла в этом случае все еще не работает.Он не помещает каждую букву слова в один столбец ... но это начало

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...