iGraph:选择连接的顶点

2024-09-26 17:48:49 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有下面的图表:

g = ig.Graph([(0,1), (0,2), (2,3), (3,4), (4,2), (2,5), (5,0), (6,3), (5,6)], directed=False)
g.vs["name"] = ["Alice", "Bob", "Claire", "Dennis", "Esther", "Frank", "George"]

我想知道鲍勃和谁有联系。鲍勃只和一个人有联系爱丽丝。但是,如果试图找到边缘:

^{pr2}$

我只是得到了上面的回答。我如何从上面推断出顶点索引是什么。或者如果这不可能,我如何找到连接到Bob的顶点?在


Tags: franknamefalse图表graphvsbob顶点
1条回答
网友
1楼 · 发布于 2024-09-26 17:48:49

这似乎有效。关键字参数由属性(例如_source_target)和运算符(例如eq(=)组成。而且似乎还需要检查边的源和目标(即使它是一个无向图),在过滤了边之后,可以使用列表理解循环遍历边并提取目标

connected_from_bob = [edge.target for edge in g.es.select(_source_eq=1)]
connected_to_bob = [edge.source for edge in g.es.select(_target_eq=1)]

connected_from_bob
# []

connected_to_bob
# [0]

然后与Bob连接的顶点是两个列表的并集:

^{pr2}$

相关问题 更多 >

    热门问题