gpt4 book ai didi

python - 查找具有相同边属性的所有顶点

转载 作者:行者123 更新时间:2023-11-28 21:23:29 26 4
gpt4 key购买 nike

我想通过使用 Igraph 找到所有共享相同边属性的顶点(顶点 ID)(因此可以有大量这样的顶点)。当我想在一条“道路”(比方说“69 号公路”(边属性))上找到所有“村庄”(我的图表的顶点)时,这将非常方便。

Igraph 中是否有一种简单的方法可以做到这一点?也许我把它复杂化了。

实际上我需要的是相反的:g.es.select(_within=g.vs[2:5])

>>> men = g.vs.select(gender="m")
>>> women = g.vs.select(gender="f")
>>> g.es.select(_between=(men, women))

因为我知道边属性但不知道顶点。

我将选择边并希望它返回所有相关的顶点。

也许我现在只是累了,但我找不到解决这个问题的方法。如果有人以正确的方式帮助我,我将不胜感激。或者可能有一种方法我想念 tutorial和文档。闻起来好像有一个非常简单的方法。 预先感谢您的任何建议!

最佳答案

首先,选择 Route 69 上的所有边:

edges = g.es.select(name="Route69")

然后遍历选定的边并收集顶点的端点:

vertices = set()
for edge in edges:
vertices.update(edge.tuple)

这将为您提供一个集合,其中包含所有顶点的顶点 ID,这些顶点至少与名称为 Route69 的一条边相交。如果你需要一个 VertexSeq,你可以简单地这样做:

vertices = g.vs[sorted(vertices)]

关于python - 查找具有相同边属性的所有顶点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17406201/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com