Networkx:将多图转换为具有加权边的简单图

Networkx:将多图转换为具有加权边的简单图,第1张

Networkx:将多图转换为具有加权边的简单图

这是一种通过对权重求和从加权多图创建加权图的方法:

import networkx as nx# weighted MultiGraphM = nx.MultiGraph()M.add_edge(1,2,weight=7)M.add_edge(1,2,weight=19)M.add_edge(2,3,weight=42)# create weighted graph from MG = nx.Graph()for u,v,data in M.edges(data=True):    w = data['weight'] if 'weight' in data else 1.0    if G.has_edge(u,v):        G[u][v]['weight'] += w    else:        G.add_edge(u, v, weight=w)print(G.edges(data=True))# [(1, 2, {'weight': 26}), (2, 3, {'weight': 42})]


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5654555.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存