我在igraph中收缩顶点时如何保留/分配节点名称?

我正在尝试在igraph中收缩某些顶点(使用python api),同时保留顶点的名称.我不清楚如何保留图形的名称属性.图的节点是人,而我正在尝试折叠名称损坏的人.

我查看了R文档,但仍然看不到该怎么做.

例如,如果我执行以下任一操作,则会收到错误消息.

smallgraph.contract_vertices([0,1,2,3,4,2,6],vertex.attr.comb=[name='first'])

smallgraph.contract_vertices([0,1,2,3,4,2,6],vertex.attr.comb=['first'])

解决方法:

在Python中,您需要的关键字参数称为Combine_attrs,而不是vertex.attr.comb.导入igraph后,请从Python命令行中查看help(Graph.contract_vertices).另外,关键字参数接受单个说明符(例如first)或字典.您的第一个示例无效,因为它根本不是有效的Python语法.第二个示例不起作用,因为您传递的列表中包含单个项目,而不仅仅是单个项目.

因此,正确的变体将是:

smallgraph.contract_vertices([0,1,2,3,4,2,6], combine_attrs=dict(name="first"))
smallgraph.contract_vertices([0,1,2,3,4,2,6], combine_attrs="first")
上一篇:Schema约束书写


下一篇:python-没有名为“ igraph._igraph”的模块