[英]Get weight combining edges in Networkx
您好,我正在使用 Networkx 和 Python 制作一些圖表。
從結構為“源”和“目標”的 a.CSV 中提取邊緣后,我得到了如下邊緣列表:
edges = [(a,b), (a,c), (b,c), (a,b), (a,b), (a,c)]
有沒有什么方法可以構建(在使用這些邊創建 MultiDiGraph 之后)一個有向圖,它結合了相等的邊,將權重作為相同邊的出現次數,結果如下:
edges = [(a, b, weight = 3), (b, c, weight = 1), (a, c, weight = 2)]
我已經實現了類似的東西,將 csv 轉換為列表,然后使用以下代碼進行反擊:
reader = csv.reader(open('edges_list.csv', 'r')) next(reader, None) list_edges = list(reader) count = Counter(map(tuple, list_edges)) list= [list(i) for i in count.items()] list= [[k,v,w] for (k,v),w in list]
但我想知道 Networkx 中是否有一些直接的 function 將多向圖中的平行邊組合為有向圖的權重。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.