當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。