В настоящее время я делаю анализ на веб-сайте, который требует, чтобы я создал схему дерева решений, показывающую вероятный маршрут, по которому люди идут, когда они приходят на веб-сайт. Я имею дело с a, data.frame
который показывает пути всех клиентов к сайту, начиная с домашней страницы. Например, клиент может выбрать следующий путь:
Homepage - pg 1
Kitchen Items page - pg 2
Pots and Pans page - pg 3
так что у этого клиента будет путешествие на 3 страницы. В R я хочу попытаться объединить все пути клиентов и таким образом назначить клиенту вероятность перехода по определенному пути на сайте. Например, если бы я исследовал все пути, я бы обнаружил, что 34% людей, которые приходят на домашнюю страницу, переходят на страницу «Кухонные предметы». Есть ли у R это средство?
Я искал различные методы в пакетах rpart и partykit, но они, похоже, не помогли.
Любое направление в этом направлении очень ценится!
источник
igraph
пакет, кажется, довольно всесторонний.Ответы:
Не один способ начать, это иметь матрицу (скажем, M n × n ), где n - количество страниц. Затем на основе вашего матричного элемента приращения необработанных данных M r c на единицу при каждом переходе пользователя со страницы r на страницу c . Это дает вам вероятности перехода.n × n Mn × n N Mр с р с
На ваш первый вопрос уже получен ответ: «Какой процент пользователей на домашней странице (скажем, на странице 1) путешествует рядом, скажем, с кухонными принадлежностями (скажем, на странице 2)?»
Или это слишком упрощенно?
источник
Похоже, вы пытаетесь воссоздать алгоритм PageRank Google. Большая часть алгоритма PageRank была разработана с использованием цепей Маркова. Вы можете найти много упоминаний о разработке методов PageRank в R.
igraph.sourceforge.net/doc/R/page.rank.htm
источник
Исходя из того, что я вижу здесь, я согласен с тем, что igraphs / Markov Chains - это, вероятно, путь, однако вы определенно можете использовать rpart и / или partykit.
Мне сложно дать простой ответ с вашим ограниченным примером, но я могу объяснить, как в целом вы это сделаете.
Вы хотите посмотреть, где были все ваши пользователи, и суммировать это, например, в строку
Затем вы можете сегментировать пользователей по категориям, например, тех, кто попал на страницу «купить сейчас», и тех, кто этого не сделал. Тогда вы можете просто начать прогнозировать этот конечный результат. В этом примере, возможно, вы обнаружите, что люди, которые больше всего покупали в магазинах сравнения, что-то покупали / не покупали.
Вы также можете сделать больше переменных, таких как «какая страница была перед страницей buynow», «сколько страниц они посетили перед покупкой чего-либо» или «когда они создали свою первую учетную запись», и вы можете добавить эти показатели в свой анализ.
Есть много разных способов, которыми вы могли бы пойти, и это начинает отвечать на разные вопросы, но я хочу сказать, что вы могли бы использовать деревья, и для некоторых проблем это может быть более быстрый и простой путь к пониманию.
Кстати, вам нужно было бы сделать факторы нечисловых переменных с помощью
factor
илиas.factor
, если вы собираетесь использовать party. На вечеринке есть несколько хороших виньеток, чтобы вы начали.источник