将pagerank结果拟合为幂律分布

时间:2013-09-18 04:16:36

标签: r networking igraph pagerank power-law

我已计算网站超链接网络(约1000个节点)的pagerank值。我使用igraph包在R中完成了这个。

我现在想采用前10个页面值,并根据幂律图形可视化这些前10个网站,以了解它们在图表中的位置。

我如何获取这些结果并根据幂律图绘制它们(例如,说明哪些站点位于长尾的下方)。

我只是想弄清楚一般的公式或技术。

值如下:

0.0810
0.0330
0.0318
0.0186
0.0161
0.0160
0.0158
0.0149
0.0136
0.0133

1 个答案:

答案 0 :(得分:0)

我这样做的方法是绘制连通性的密度,并将图表与前10个点重叠。

假设您已经拥有所有节点的连接:

d <- density(connectivity)
top10 <- sort(connectivity, decreasing=TRUE)[1:10]

# get the height of the density for each of the top10 nodes:
top10y <- sapply(top10, function(node) {
  diffs <- abs(node - d$x)
  yloc <- which(diffs == min(diffs))[1] # in case more than one match
  d$y[yloc]
})

# now plot
plot(d)
points(top10, top10y, col="red")

例如,我模拟了1000个节点的连通性,以遵循正态分布:

enter image description here