我有一个这样的有向图-
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]
以下是通过遍历edges.data()
Graph的一种解决方案。PS:我基本上是在JuPyter中使用制表符补全来查找属性,然后通过使用不同的属性来提出以下解决方案。这段代码只会为您提供所需的属性'a'
。因此,如果将第四个节点添加为G.add_edge('d', 'b', attr=0.7)
,则输出将[0.6, 0.2, -0.3]
是不计算第四个节点的位置。
attributes = []
for edge in G.edges.data():
if edge[0] == 'a':
attributes.append(edge[-1]['attr'])
elif edge[1] == 'a' :
attributes.append(-edge[-1]['attr'])
print (attributes)
# [0.6, 0.2, -0.3]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句