具有不同节点集的两个 NetworkX 图之间的差异
Difference between two NetworkX graphs with different node sets
我想要差值 G1-G2 给出存在于 G1 中但不存在于 G2 中的边的输出。只有当 G1 和 G2 具有相同的节点集时,NetworkX 中的 difference
函数才允许这种差异。
我的例子:
G1.edges=EdgeView([(0, 1), (1, 2), (1, 3), (1, 18))
G2.edges=EdgeView([(0, 1), (1, 2), (1, 3), (2, 22)])
期望的输出是(1,18)
EdgeView class 定义边上的集合操作。
因此,您可以简单地使用:
G1.edges() - G2.edges()
示例:
>>> G2.edges()
EdgeView([(0, 1), (1, 2), (1, 3), (2, 22)])
>>> G1.edges()
EdgeView([(0, 1), (1, 2), (1, 3), (1, 18)])
>>> G1.edges() - G2.edges()
{(1, 18)}
我想要差值 G1-G2 给出存在于 G1 中但不存在于 G2 中的边的输出。只有当 G1 和 G2 具有相同的节点集时,NetworkX 中的 difference
函数才允许这种差异。
我的例子:
G1.edges=EdgeView([(0, 1), (1, 2), (1, 3), (1, 18))
G2.edges=EdgeView([(0, 1), (1, 2), (1, 3), (2, 22)])
期望的输出是(1,18)
EdgeView class 定义边上的集合操作。
因此,您可以简单地使用:
G1.edges() - G2.edges()
示例:
>>> G2.edges()
EdgeView([(0, 1), (1, 2), (1, 3), (2, 22)])
>>> G1.edges()
EdgeView([(0, 1), (1, 2), (1, 3), (1, 18)])
>>> G1.edges() - G2.edges()
{(1, 18)}