繁体   English   中英

检查两个顶点是否在 iGraph 中连接

[英]Check if two vertices are connected in iGraph

iGraph 0.6 中是否有用于 python 2.7 的非常短的表达式来查看索引指定的两个顶点是否由边连接?

我在某处发现:

are_connected(v1, v2)  

但在 python 中,我会收到一条错误消息:“NameError: global name 'are_connected' is not defined”

上面的表达式可能适用于 R 或者完全错误。 我不知道。 R 不足以满足我在我的项目中尝试做的事情。

我的图是无向的,有许多顶点和边序列(vs 和 es),如本教程所述:http: //hal.elte.hu/~nepusz/development/igraph/tutorial/tutorial.html

更新:我发现http://packages.python.org/python-igraph/igraph.GraphBase-class.html#is_multiple is_multiple 和 is_mutual 我认为他们每个人都可以做到这一点,但我仍然得到错误: “NameError:未定义全局名称‘are_mutual’”。

在互联网上我找不到如何正确实施它的示例。 我还在找。

郑重声明: are_connected (以及发帖人提到的is_mutualis_multiple )是图本身的方法,而不是它们自己的函数,因此正确的使用方法如下:

>>> g = Graph.GRG(100, 0.2)
>>> g.are_connected(0, 2)
False

GraphBase类具有函数get_eid(v1, v2, directed=True, error=True)返回由其索引指定的顶点之间的任意边。 在你这样称呼它:

g.get_eid(v1, v2, directed=False, error=False)

如果顶点断开连接,它将返回 -1,否则返回一些边。

我从未听说过该模块,但无论如何,这似乎是一个导入问题,请尝试从模块中导入该功能,即:

from igraph import are_connected

否则,python 将无法识别它。 另一种可能性是必须从您首先声明的图形对象调用该函数:

from module import MyGraphObject
...
MyGraphObject.are_connected(...)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM