差集#

difference(G, H)[源码]#

返回一个新的图,其中包含存在于 G 中但不存在于 H 中的边。

G 和 H 的节点集必须相同。

参数:
G,H

一个 NetworkX 图。G 和 H 必须有相同的节点集。

返回值:
D一个新的图,类型与 G 相同。

注意

图、节点和边的属性不会复制到新图中。如果您想要一个包含 G 中属性(包括边数据)的 G 和 H 的差集新图,请使用 remove_nodes_from(),如下所示:

>>> G = nx.path_graph(3)
>>> H = nx.path_graph(5)
>>> R = G.copy()
>>> R.remove_nodes_from(n for n in G if n in H)

示例

>>> G = nx.Graph([(0, 1), (0, 2), (1, 2), (1, 3)])
>>> H = nx.Graph([(0, 1), (1, 2), (0, 3)])
>>> R = nx.difference(G, H)
>>> R.nodes
NodeView((0, 1, 2, 3))
>>> R.edges
EdgeView([(0, 2), (1, 3)])
----

其他后端也实现了此函数

graphblas:支持 OpenMP 的稀疏线性代数后端。