簡體   English   中英

在 Networkx 中獲取權重組合邊

[英]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 將多向圖中的平行邊組合為有向圖的權重。

粗略搜索了本站的文檔相關帖子后,好像.networkx 沒有這種功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM