Lok*_*oki 2 python data-visualization graph list
我正在尝试将一组弧转换为一组边缘,以进行一些简单的可视化工作.
我的弧数据目前看起来像:
(
['A','B',2],
['B','A',3],
['A','C',4],
['B','C',2],
)
Run Code Online (Sandbox Code Playgroud)
我需要将其转换为边缘,因此方向合并,如下所示:
(
['A','B',5],
['A','C',4],
['B','C',2],
)
Run Code Online (Sandbox Code Playgroud)
我认为应该采用非常pythonic的方式来做到这一点,但不确定最优雅的方式是什么.
这是一种使用字典的方法,其中键是按照排序顺序的弧的末端:
import collections
d = collections.defaultdict(int)
for n1, n2, v in arcdata:
d[min(n1, n2), max(n1, n2)] += v
result = [[k[0], k[1], v] for k, v in d.iteritems()]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
430 次 |
最近记录: |