我在networkx中有一个有向图。我希望只保留那些具有两个或多个出边或没有出边的节点。我该怎么做?
或者
如何从networkx图中删除仅具有一个出边的节点。
out_degree
方法查找图形 G
中具有一个外向边的节点。outdeg = G.out_degree()
to_remove = [n for n in outdeg if outdeg[n] == 1]
接下来是移除:
G.remove_nodes_from(to_remove)
如果你想创建一个新的图形而不是直接修改现有的图形,请创建一个子图:
to_keep = [n for n in outdeg if outdeg[n] != 1]
G.subgraph(to_keep)
[n for (n, deg) in outdeg if deg == 1]
的语法。 - Davide Fiocco