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


Python NetworkX collaboration_weighted_projected_graph用法及代码示例


本文简要介绍 networkx.algorithms.bipartite.projection.collaboration_weighted_projected_graph 的用法。

用法:

collaboration_weighted_projected_graph(B, nodes)

纽曼对 B 的加权投影到其节点集之一。

协作加权投影是二分网络 B 到指定节点的投影,并使用纽曼协作模型[1]分配权重:

其中uv是底部二分节点集的节点,k是顶部节点集的一个节点。 d_k 是二分网络中节点 k 的度数,如果节点 u 链接到原始二分图中的节点 k,则 delta_{u}^{k} 为 1,否则为 0。

如果与原始二分图中的公共节点有边,则节点保留其属性并在结果图中连接。

参数

BNetworkX 图

输入图应该是二分图。

nodes列表或可迭代

要投影到的节点(“bottom” 节点)。

返回

GraphNetworkX 图

投影到给定节点上的图。

注意

没有尝试验证输入图 B 是否为二分图。图和节点属性(浅)复制到投影图。

有关如何在 NetworkX 中处理二分图的更多详细信息,请参阅 bipartite documentation

参考

1

Scientific collaboration networks: II. Shortest paths, weighted networks, and centrality, M. E. J. Newman, Phys. Rev. E 64, 016132 (2001).

例子

>>> from networkx.algorithms import bipartite
>>> B = nx.path_graph(5)
>>> B.add_edge(1, 5)
>>> G = bipartite.collaboration_weighted_projected_graph(B, [0, 2, 4, 5])
>>> list(G)
[0, 2, 4, 5]
>>> for edge in sorted(G.edges(data=True)):
...     print(edge)
...
(0, 2, {'weight': 0.5})
(0, 5, {'weight': 0.5})
(2, 4, {'weight': 1.0})
(2, 5, {'weight': 0.5})

相关用法


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