gpt4 book ai didi

python - 承包 networkx 中的节点列表

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:35:34 25 4
gpt4 key购买 nike

我有一个包含节点的字典:

supernodes = list(nx.connected_components(G1))

print(supernodes) 的结果是:

[{1, 2, 3, 5}, {8, 6}, {7, 9, 10, 12, 13}, {4}, {11}, {14}, {15}]

如何将每个列表合并到一个节点?我找到了这个函数 nx.contracted_nodes(G, (1, 3)) 但我怎样才能把 {1,2,3,5}, {8,6}等并创建 7 个契约节点?

最佳答案

你可以试试这个:

import networkx as nx
# Preamble, define G1

# contract nodes
for supernode in nx.connected_components(G1):
nodes = sorted(list(supernode))
for node in nodes[1:]:
G1 = nx.contracted_nodes(G1, nodes[0], node)

G1 中的每个节点 x 对应于以 x 为较小元素的超节点。如果您想删除自循环,请改为编写 nx.contracted_nodes(G1, nodes[0], node, self_loops=False)

关于python - 承包 networkx 中的节点列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47501336/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com