当前位置: 首页 > 面试题库 >

加权边缘如何影响networkx中的PageRank?

井誉
2023-03-14
问题内容

我在玩networkx(Python中的图形库),发现文档说PageRank算法在评分时考虑了边缘权重,但是我想知道更大的边缘权重是更好还是更低的权重呢?


问题答案:

不久,较大的权重对于传入的节点更好。

PageRank在有向加权图上工作。如果页面A具有到页面B的链接,则页面B的得分会上升,即页面B(节点)输入的次数越多,其得分就越高。

有关更多详细信息,请参见PageRank上的Wikipedia文章。

编辑 :让我们做一个实验。创建一个具有3个节点和两个权重相等的有向边的有向图。

import networkx as nx
D=nx.DiGraph()
D.add_weighted_edges_from([('A','B',0.5),('A','C',0.5)])
print nx.pagerank(D)

>> {'A': 0.259740259292235, 'C': 0.3701298703538825, 'B': 0.3701298703538825}

现在,增加(A,C)边的权重:

D['A']['C']['weight']=1
print nx.pagerank(D)

>> {'A': 0.259740259292235, 'C': 0.40692640737443164, 'B': 0.3333333333333333}

如您所见,随着传入边缘权重的增加,节点C得分更高。



 类似资料:
  • 问题内容: 我有一个表示网络拓扑结构的networkx弹簧布局。关键节点的颜色为红色,另一个为蓝色。到关键节点边缘的路线用短划线表示。如何在指定的时间间隔内为networkx边缘绘制动画? 问题答案: 尝试该模块。另请参阅这个很棒的教程,

  • H=nx。来自\u pandas\u edgelist(链接,source='source',target='target',edge\u attr='value') 这给了我边和边的列表 edge_labels=nx.get_edge_attributes(Q,'value')nx.draw_networkx_edge_labels(Q,pos=nx.draw(Q),标签=edge_labels

  • 有一个州(地区),它是根植于节点1的树。该州所有城市(编号从1到N+1)都是通过双向道路连接起来的。你得在每条路上加通行费税。该州有N条公路连接各城市。您必须在道路上分配通行费税,以便最大限度地实现以下所述的功能通行费: 你得把通行费税最大化。根据给定数组A中的通行费税分配道路(每个值只使用一次)。查找获得的最大通行费。 输入格式: 第一行包含 N和一个值始终为2的整数。 那么, 接下来的N条道路

  • 我正在为学院实现DFS和边缘分类(基于本文提供的代码:https://courses.csail.mit.edu/6.006/fall11/rec/rec14.pdf)。 斜体字母只是顶点的名称,而顶点内部的数字分别是发现时间和完成时间。边缘分为后、前或交叉;其他都是树边。 正如您所看到的,该图是按照以下顺序访问的:首先是,然后是它的邻居(在DFS之后);当没有更多可访问的邻居时,访问开始于。 为

  • 问题内容: 我有一个多图对象,并想将其转换为带有加权边的简单图对象。我浏览了networkx文档,但似乎找不到内置函数来实现此目的。我只是想知道是否有人知道networkx中的内置功能可以实现此目标。我看了to_directed()和to_undirected()函数,但它们不符合我的目标。 问题答案: 这是一种通过对权重求和从加权多图创建加权图的方法:

  • 我们需要在Angular应用程序中显示节点和边图,我们选择在high charts/amcharts/d3上的Cystoscape中进行。Cytoscape加载速度更快,是唯一一个可以处理1000s节点的库。其他的断裂或滞后。 我们下载了cytoscape应用程序,并能够看到一个布局“边缘加权spring Embedded”。它在一个整体的地球仪一样的布局中展示了我们相互联系的节点。 现在我希望在