网络X删除具有一个边缘的节点

时间:2019-12-16 09:27:57

标签: python-3.x networkx

我想删除一个边缘/没有边缘的节点。 我有一个类似于下面的图Before

After

我想要的是

谢谢您的帮助

1 个答案:

答案 0 :(得分:0)

我了解您要删除所有度数小于或等于1的节点。 如果是这种情况,您可以执行例如:

import networkx

G1 = networkx.Graph()
G1.add_edges_from([('a','b'),('b','c'),('c','e'),('c','d'),('c','f'),('c','g')])
to_be_removed = [x for  x in G1.nodes() if G1.degree(x) <= 1]

for x in to_be_removed:
    G1.remove_node(x)

print(G1.edges())

您将得到:

[('b', 'c')]
相关问题