我正在一个加权的DiGraph其中节点= 61634,边缘= 28,378运行PageRank。NetworkX的python:pagerank_numpy,pagerank失败,但pagerank_scipy的作品
pagerank(G)
抛出我ZeroDivsionErrorpagerank_numpy(G)
抛出我ValueError异常:数组大pagerank_scipy(G)
给我的网页排名虽然
我能理解pagerank_numpy
错误会由于内存限制,但为什么pagerank失败?我尝试添加一个无限小的值到零权重的边,但同样的问题依然存在。有些指针会很好。不像pagerank_numpy
或pagerank_scipy
-
链接到我的GraphML文件 - https://mega.co.nz/#!xlYzEDAI!Lyh5pD-NJL61JPfkrNyJrEm0NnFc586A0MUD8OMYAO0
NetworkX版本 - 1.8.1 Python的 - 因为它执行使用stochastic_graph
其计算2.7
谢谢你的回应。是否使用'pagerank_scipy'够好,或者听起来像是垃圾进出垃圾?具体而言,我可以使用负权重来保留图表,并使用'pagerank_scipy'获得有意义的结果吗? – Dexter
'pagerank_scipy'应该很好,如果你运行足够长的时间。但是,我不确定您希望使用负权重学习什么。 Pagerank基本上是一个在图形上重新启动的随机游走,其中边缘权重用于衡量访问某些邻居的概率。由于概率是[0,1],我不确定你会如何解释负重。它应该运行,但。 – mdml
如果我加入一个小的默认权重,如权重为负值时所说的那样,会更有意义吗?我更担心结果的解释。 PageRank本质上是达到目的的一种手段。 – Dexter