我想知道如何更改有向图节点的单个节点名称。我是 networkx 的新手,只能找到有关如何更改所有节点名称的答案。
在我的情况下,我正在迭代图 A 以创建图 B。p并且c是图 A 的节点。图 A 的边 (p,c) 包含我想添加到pB节点的数据。但是,当我添加时从图 A 到p图 B 的现有节点的边数据,我想更新的名称p等于的名称,c以便我能够再次为图 A 的下一条边引用它,因为它是edge (c,x) ,我可以使用c再次引用它...
我的代码的相关部分看起来像这样
new_stages = A.in_edge(c, data='stages')
stages = B.node[p]['stages']
stages.append(new_stages)
<<Update node p to have name of c??>>
B.add_node(p, stages=new_stage_set)
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏,谢谢!
你有nx.relabel_nodes这个。这是一个简单的用例:
G = nx.from_edgelist([('a','b'), ('f','g')])
mapping = {'b':'c'}
G = nx.relabel_nodes(G, mapping)
G.edges()
# EdgeView([('a', 'c'), ('f', 'g')])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1709 次 |
| 最近记录: |