Включение количества товара в транзакции для алгоритма Apriori - PullRequest
0 голосов
/ 10 мая 2018

Я работал над простой системой рекомендаций, я начал с априорного алгоритма с использованием arules в R. К моему удивлению, я получил 0 правил, когда поддержка была больше 0,0001, что слишком мало для поддержки. Я выяснил, что причиной этого может быть то, что дубликаты в каждой транзакции удаляются. Я попытался решить эту проблему, установив удаление дубликатов как ложное:

df = read.transactions("transactions.csv",sep = ',',rm.duplicates = FALSE)

Но это не сработало, и я получил следующее

Warning message:
 In asMethod(object) : removing duplicated items in transactions  

Так есть ли способ решить эту проблему, или есть лучший способ учитывать количество каждого элемента в каждой транзакции в коде? Есть ли лучший вариант в Python или любой другой язык? Было бы здорово, если бы кто-нибудь помог мне в этом.

1 Ответ

0 голосов
/ 10 мая 2018

Поддержка основана на количестве транзакций.

Количество товара, таким образом, не имеет значения для поддержки по определению.

Возможно, ваша проблема в том, что вы недостаточно хорошо обработали свои данные. Для правил ассоциации обычно кажется необходимым работать с группами продуктов или классов , а не с отдельными кодами продуктов. То есть найдите правила с "пивом" и "молоком", а не с "худшими порциями по 12 унций Вильмауки в упаковке по 24 унции" и "подгузниками FUGGIES UnderNites, размер 4, 56 кар, большая упаковка". Объединение таких сверхдифференцированных продуктов усиливает поддержку.

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