找到R中最常见的路径

时间:2014-03-07 18:23:57

标签: r

我的数据与以下内容类似。我有关于用户ID,路径中的页码以及访问网站的网址的数据。我试图找到最常见的路径。

df = data.frame(user_id = c(1,1,1,2,2), 
                page = c(1,2,3,1,2),
                url = c("x.com/home","x.com/home/about_us","x.com/directions",
                        "x.com/specials","x.com/contact_us"))
df

最常见的路径是什么?如何在不使用任何数据挖掘算法的情况下在R中找到它。有这个包吗?

通过最常见的路径,我的意思是最常访问的网址是什么。因此,对于每个转到1,2,3或4页的用户来说,最常出现的路径是什么。

编辑:

输出示例:

对于访问过四页的所有用户,这里是访问过的最常见的网站系列。这意味着这些是访问过的最常见的第一,第二,第三和第四个站点。

   1   x.com/home
   2   x.com/home/about_us
   3   x.com/specials
   4   x.com/contact

如果我们有十个人去了四页,这是最常见的路径' (一系列网站)在一次会议中访问。

2 个答案:

答案 0 :(得分:1)

不清楚你想要什么。但是,如果访问次数最多的是具有最大页数的网址,则可以执行此操作:

library(plyr)

ddply(df,.(user_id),summarise,most.visisted =url[which.max(page)])
  user_id    most.visisted
1       1 x.com/directions
2       2 x.com/contact_us

答案 1 :(得分:1)

我认为这可能像市场篮子分析挑战一样对待。也就是说,访问者点击的最常见的网址是什么,如果是网址A,那么网址为B.要执行此操作,您需要使用库(arules)。 prdeepakbabkus blog

有一个很好的解释

例如,使用您的示例(编辑了一下),再做了两次观察

library(arules)
data <- paste("1 x.com/home","1 x.com/home/about_us","2 x.com/home",
"2 x.com/home/about_us","3 x.com/home","4 x.com/specials", sep ="\n") 
cat(data)
write(data, file = "demo_single")
tr <- read.transactions("demo_single", format = "single", cols = c(1,2))
inspect(tr)

现在,您已准备好查看项目频率,以及最有可能出现在一起的内容

itemFrequencyPlot(tr);
basket_rules <- apriori(tr,parameter = list(sup = 0.5, conf = 0.9));
inspect(basket_rules);