Apriori, arulesSequence, в R: есть ли поддержка последовательности "корзин" (заказ в пределах одной поездки за покупками не имеет значения)?
Я начинаю работу с arulesSequence с целью выполнения анализа частых последовательностей для некоторых данных, которые у меня есть. Данные для магазина A выглядят следующим образом:
CUSTOMER_ID seq_num Размер купленных_элементов
1 17399 1 2 {100,100}
2 17399 2 1 {800}
3 17399 3 2 {900,900}
4 17399 4 1 {405}
5 17399 5 4 {200 505 200 505}
Это означает, что этот покупатель #17399 совершал покупки в этом магазине A несколько раз. Во время своей первой поездки за покупками этот человек покупал товары с кодами 100 и 100 (2 товара). Во время его / ее второй поездки за покупками этот клиент купил только товар 800. И так далее.
Теперь я хочу использовать cSPADE для этого клиента, где порядок не имеет значения в "корзине", но имеет значение при совершении покупок. Так что в конечном итоге мой рекорд для клиента 17399 будет:
CUSTOMER_ID куплено_элементов
17399 {(100 100),800,(900 900),405,(200 505 200 505)}
Где {} содержит полную последовательность, а () представляет каждую поездку за покупками.
В целом, я понимаю, что это возможно. Однако я не видел ни примеров (несколько часов поиска), ни заметок, явно говорящих о последовательностях arules, поддерживающих это. Есть какие-нибудь мысли? Буду признателен за помощь.
Спасибо за ваше время.
1 ответ
После нескольких часов обучения я добавляю ответ, который нашел, на тот случай, если он пригодится другим.
Ответ - да, в пакете есть поддержка повторяющихся предметов в корзинах. На самом деле пример на этом сайте: https://en.wikibooks.org/wiki/Data_Mining_Algorithms_In_R/Sequence_Mining/SPADE показывает этот случай. Хотя в этом примере нет двух порядковых номеров (принадлежащих одной и той же транзакции), они совпадают. Даже если бы они были одинаковыми (я играл с примером input.txt), при использовании read_basket и cSPADE не возникает ошибка, которую я пытался применить.
В Интернете есть много примеров для априори, для которых это повторение предметов в корзине не допускается. Это вызывает много путаницы. Пример, вставленный выше, является хорошим примером, демонстрирующим использование cSPADE. Надеюсь, что это помогает людям там.