2024-05-14 08:55:44 发布
网友
我正在写一个函数,它接收一个图形作为输入。 我需要做的第一件事是确定图的顺序(即图中的顶点数)。
我的意思是,我可以使用g.summary()(它返回一个包含顶点数的字符串),但随后我需要解析该字符串以得到顶点数——这太糟糕了。
g.summary()
获取我使用的len(g.get_edgelist())的边数,这是有效的。但是没有g.get_vertexlist(),所以我不能使用相同的方法。
len(g.get_edgelist())
g.get_vertexlist()
当然,有一种简单的方法可以做到这一点,不需要解析字符串。
由于igraph中的一些函数同时被重命名,我发现这里的答案过时了。医生现在建议的是
igraph
gorder(g)
这对我有用。对ecount的类比是
ecount
gsize(g) # vcount(g) still works, but not g.vcount()
注意帮助页面被巧妙地重定向是很有用的,所以
?vcount
带您到gorder文档等
gorder
g.vs应返回顶点序列作为igraph.VertexSeq对象:
g.vs
igraph.VertexSeq
>>> from igraph import Graph >>> g = Graph.Formula("A-B") >>> g.vs["name"] ['A', 'B'] >>> len(g.vs) 2 >>> g.vcount() 2
编辑:正如@Tamas在下面提到的,g.vcount()还将返回顶点的数量。为说明这一点而编辑的示例。
g.vcount()
g.vcount()是iggraph中返回顶点数的专用函数。类似地,g.ecount()返回边的数目,并且它比len(g.get_edgelist())快得多,因为它不必预先构造完整的边列表。
g.ecount()
由于
igraph
中的一些函数同时被重命名,我发现这里的答案过时了。医生现在建议的是这对我有用。对
ecount
的类比是注意帮助页面被巧妙地重定向是很有用的,所以
带您到
gorder
文档等g.vs
应返回顶点序列作为igraph.VertexSeq
对象:编辑:正如@Tamas在下面提到的,
g.vcount()
还将返回顶点的数量。为说明这一点而编辑的示例。g.vcount()
是iggraph中返回顶点数的专用函数。类似地,g.ecount()
返回边的数目,并且它比len(g.get_edgelist())
快得多,因为它不必预先构造完整的边列表。相关问题 更多 >
编程相关推荐