如何删除igraph python中没有边的所有顶点?

时间:2016-05-06 20:44:09

标签: python igraph

我有一个包含许多没有边的顶点的图。

IGRAPH UN-- 560 49 -- 
+ attr: area (v), cnpj (v), grande_area (v), name (v), res (v), std (v), company (e), res (e), std (e)

我想删除所有没有边缘的顶点... 类似的东西:

 to_delete_ids = [v.index for v in g_groups_all.vs if v HAS NO EDGES]
 g_groups_all.delete_vertices(to_delete_ids)

但我不知道如何编写条件以检查顶点是否没有边缘。我试过v._source == None or v._target != True没有成功。

我的边e['company'] e['res'] and e['std']可以是TrueNone

1 个答案:

答案 0 :(得分:2)

尴尬地问了这样一个问题。当然......

 to_delete_ids = [v.index for v in g_groups_all.vs if v.degree() == 0]
 g_groups_all.delete_vertices(to_delete_ids)

显然! 但我花了一些时间来提出这个......