当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NetworkX communicability_betweenness_centrality用法及代码示例


本文简要介绍 networkx.algorithms.centrality.communicability_betweenness_centrality 的用法。

用法:

communicability_betweenness_centrality(G)

返回 G 中所有节点对的子图可通信性。

可传播介数测度利用连接每对节点的游走数作为介数中心性测度的基础。

参数

G: graph

返回

nodes字典

以可通信介数为值的节点字典。

抛出

NetworkXError

如果图不是无向且简单的。

注意

G=(V,E) 为具有n 节点和m 边的简单无向图,A 表示G 的邻接矩阵。

G(r)=(V,E(r)) 是删除连接到节点r 的所有边而不是节点本身的图。

G(r) 的邻接矩阵是 A+E(r) ,其中 E(r) 仅在 r 行和列中具有非零值。

节点r的子网介数为[1]

其中 G_{prq}=(e^{A}_{pq} - (e^{A+E(r)})_{pq} 是涉及节点 r 的游走数,G_{pq}=(e^{A})_{pq} 是从节点 p 开始到节点 q 结束的封闭游走的数量,而 C=(n-1)^{2}-(n-1) 是等于项数的归一化因子在总和。

生成的 omega_{r} 取值介于 0 和 1 之间。连通图无法达到下限,而星形图则达到上限。

参考

1

Ernesto Estrada, Desmond J. Higham, Naomichi Hatano, “Communicability Betweenness in Complex Networks” Physica A 388 (2009) 764-774. https://arxiv.org/abs/0905.4102

例子

>>> G = nx.Graph([(0, 1), (1, 2), (1, 5), (5, 4), (2, 4), (2, 3), (4, 3), (3, 6)])
>>> cbc = nx.communicability_betweenness_centrality(G)
>>> print([f"{node} {cbc[node]:0.2f}" for node in sorted(cbc)])
['0 0.03', '1 0.45', '2 0.51', '3 0.45', '4 0.40', '5 0.19', '6 0.03']

相关用法


注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.algorithms.centrality.communicability_betweenness_centrality。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。