python - Networkx 边缘属性

标签 python networkx

我有一个像这样的有向图-

G = nx.DiGraph()
G.add_edge('a', 'b', attr=0.6)
G.add_edge('a', 'c', attr=0.2)
G.add_edge('d', 'a', attr=0.3)

如何迭代节点“a”以获取以下格式的属性

[0.6, 0.2, -0.3]

最佳答案

这应该可以做到,尽管可能有更好的方法:

In [3]: [G[e[0]][e[1]]['attr'] for e in  G.out_edges('a')] + [-G[e[0]][e[1]]['attr'] for e in  G.in_edges('a')]

Out[3]: [0.6, 0.2, -0.3]

上面的代码使用两个列表推导式循环遍历 a 中的所有出站和入站边缘,并从边缘中选取属性,如果来自入站边缘,则分配一个负值。

关于python - Networkx 边缘属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54263634/

相关文章:

python - 在 svg 中设置默认单位(Python svgwrite)

python - SparkSQL : HQL script in file to be loaded on Python code

python - 检查 tkinter 中按钮的状态

python - Networkx - 找到加权网络中出现次数最多的路径

python - Networkx节点上的多个属性用于图上的多个标签

Python: `1+1j == (1+1j)` 但 `1+1j.imag == 2` ,为什么?

python - 使用 python 给定网络图中的某个节点,递归函数返回所有连接节点的列表

python - Betweenness_centrality 带来意想不到的结果

python - Networkx 重复边

python - 如何使用 BeautifulSoup 寻找值(value)