NetworkX中Page Rank函数的参数"weight"有什么作用?

What does parameter "weight" of Page Rank function in NetworkX do?

据此post, weights of a weighted digraph have an effect on the Page Rank of the graph. I have tried the code in that post:

from networkx.algorithms.link_analysis.pagerank_alg import pagerank_numpy
ddd=nx.DiGraph()
ddd.add_weighted_edges_from([('A','B',0.5),('A','C',0.5)])
print(pagerank_numpy(ddd))
ddd['A']['C']['weight']=1
print(pagerank_numpy(ddd))  

>>> {'A': 0.2597402597402597, 'B': 0.37012987012987014, 'C': 0.37012987012987014}
>>> {'A': 0.2597402597402599, 'B': 0.3333333333333334, 'C': 0.40692640692640686}

但是,与此同时,pagerank_numpy 有一个名为weight 的参数。根据 documentation:

weight (key, optional) – Edge data key to use as weight. If None weights are set to 1.

上面的例子中,没有设置weight,但是好像权重也没有全部设置为1,那么,weight这个参数到底是做什么的呢?

NetworkX 版本:2.1

PageRank 算法根据网络上的随机游走为节点分配权重。我们可以通过使步行偏向于比其他边缘更多地遵循某些边缘来修改算法。为此,我们对网络的边缘进行加权。 Networkx 在边权重方面非常灵活。我们可以使用名称为 'weight''scale_factor''relative_frequency' 的权重或任何我们想为其命名的字符串。因此 PageRank 算法需要知道使用哪个名称。

这就是您在向算法传递 weight 参数时告诉算法的内容。如果它没有得到,它会将所有边缘视为具有权重 1。