我想计算一个有 6 个节点的简单图的介数:
G=nx.Graph()
e=[(1,2),(1,5),(2,3),(3,6),(5,6),(4,2),(4,3)]
G.add_edges_from(e)
btw=nx.betweenness_centrality(G)
Run Code Online (Sandbox Code Playgroud)
当我计算每个节点时,输出应该是:
{1: 1.5, 2: 2.5, 5: 1, 3: 2.5, 6: 1.5, 4: 0}
Run Code Online (Sandbox Code Playgroud)
但输出是:
{1: 0.15000000000000002,
2: 0.25,
5: 0.1,
3: 0.25,
6: 0.15000000000000002,
4: 0.0}
Run Code Online (Sandbox Code Playgroud)
是什么原因?
看来您正在计算非标准化中心性,而默认情况下betweenness_centrality已normalized设置为True。
相反,将其设置为False:
G=nx.Graph()
e=[(1,2),(1,5),(2,3),(3,6),(5,6),(4,2),(4,3)]
G.add_edges_from(e)
btw=nx.betweenness_centrality(G, normalized=False)
# {1: 1.5, 2: 2.5, 5: 1.0, 3: 2.5, 6: 1.5, 4: 0.0}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
737 次 |
| 最近记录: |