Найти - Пользователи
Полная версия: Поиск одинаковых товаров
Начало » Python для новичков » Поиск одинаковых товаров
1 2
d3z0x77+rsmqbc
Есть 2 списка. Нужно их сравнить и найти одинаковые товары. Проблема в том, что одни и теже товары могут называться немного по разному.
Сейчас я поиск реализовал так:
Берётся кортеж, из него выдирается список и последовательно соединяется со всеми вложенными в lst2 списками. В получившемся списке подсчитывается количество одинаковых слов и на основании этого делается вывод одинаковые эти товары или нет.

Проблема в том, что для флешек каждой фирмы количество совпадающих слов должно быть разным. В итоге получается, что программа или не находит одинаковые флешки или в выводе показываются товары неподходящие.

lst1 = [(['apacer', 'handy', 'steno', 'ah332', '16gb'], '760'), (['transcend', 'jetflash', '370', '64gb'], '1400'), (['transcend', 'jetflash', '350', '32gb'], '599'), (['sandisk', 'ultra', '32gb'])]
lst2 = [[['transcend', 'v90', '4gb', '(ts4gjfv90c)', 'металл'], '499,00'], [['transcend', 'jetflash', '370', '64gb', 'ts16gjf330'], '999,00'], [['apacer', 'ah323', '16gb', 'ap16gah323w-1', 'white'], '890,00']]

Подскажите пожалуйста, какой алгоритм поиска мне лучше всего использовать.
doza_and
Задача абсолютно не новая. Я так понимаю она решается почти у всех кто занимается торговлей. Теперь о печальненком. По различным способам ее решения делаются доклады на конференциях и защищаются диссертации. Если у вашей задачи есть специфика то это может спасти.
надо ответить на вопросы:
1 насколько большие списки? Вас ограничивает быстродействие компа?
2 насколько качественно нужно идентифицировать товары? 10% ошибок? 0.001%
3 сколько вы намерены потратить времени на решение этой задачи? Неделю? Месяц? Год?

Алгоритмы? Полнотекстовый поиск, нейросети, кластерный анализ…
d3z0x77+rsmqbc
Списки не очень большие, думаю в пределах сотни наименований.
Это что-то вроде лабы, ну и я сам заинтересовался этим вопросом. Для собственного развития хочу разобраться с этим вопросом.
py.user.next
d3z0x77+rsmqbc
Нужно их сравнить и найти одинаковые товары.
надо выражению “одинаковые товары” дать точное определение
проанализируй, как ты сам определяешь, одинаковые они или разные
d3z0x77+rsmqbc
В 1 списке есть вложенный список с товаром
['apacer', 'handy', 'steno', 'ah332', '16gb']
и во 2 списке есть вложенный список с товаром
['apacer', 'ah323', '16gb', 'ap16gah323w-1', 'white']
Оба товары одинаковые, просто во втором списке эта флешка более развернута описана, но по сути это одно и тоже.
py.user.next
d3z0x77+rsmqbc
Оба товары одинаковые
как ты это понял ?
d3z0x77+rsmqbc
Сори, тупанул. Не то скопировал сюда.
Список 1
['apacer', 'handy', 'steno', 'ah325', '32gb']
Список 2
['apacer', 'ah325', '32gb', 'ap32gah325b-1', 'black']

Может я чего-то не понимаю, но мне кажется py.user.next вы цепляетесь непонятно к чему, а по теме вопроса ни чего абсолютно ни слова не сказали.
dimy44
Почему, я вот тоже ждал примера, когда вы проясните, по каким признакам вы объединяете товары, названия которых “немного разные”
d3z0x77+rsmqbc
dimy44
вот тоже ждал примера, когда вы проясните, по каким признакам вы объединяете товары,
Обе флешки фирмы apacer, они одинаковой модели ah325 и размера одинакового 32gb.
Singularity
d3z0x77+rsmqbc
собрать список фирм и сравнивать по им и размеру “32gb” благо везде есть цифра и gb
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB