core_number#
- core_number(G)[source]#
返回每个节点的核数。
k-核是包含度数大于等于 k 的节点的最大子图。
节点的核数是包含该节点的 k-核中 k 的最大值。
- 参数:
- GNetworkX 图
无向图或有向图
- 返回:
- core_number字典
一个字典,键为节点,值为核数。
- 抛出:
- NetworkXNotImplemented
如果
G
是多重图或包含自环。
注意
对于有向图,节点度数定义为入度 + 出度。
参考
[1]An O(m) Algorithm for Cores Decomposition of Networks Vladimir Batagelj and Matjaz Zaversnik, 2003. https://arxiv.org/abs/cs.DS/0310049
示例
>>> degrees = [0, 1, 2, 2, 2, 2, 3] >>> H = nx.havel_hakimi_graph(degrees) >>> nx.core_number(H) {0: 1, 1: 2, 2: 2, 3: 2, 4: 1, 5: 2, 6: 0} >>> G = nx.DiGraph() >>> G.add_edges_from([(1, 2), (2, 1), (2, 3), (2, 4), (3, 4), (4, 3)]) >>> nx.core_number(G) {1: 2, 2: 2, 3: 2, 4: 2} ----
其他后端实现了此函数
- cugraphGPU 加速后端。
暂不支持有向图。