删除两个顶点之间的边[igraph python]

时间:2014-02-05 00:18:46

标签: python igraph

我无法相信我在这方面遇到了困难,但我们在这......这应该是直截了当的,这是我的代码:

i = random.choice(ER.vs)
j = random.choice(ER.vs)

if t < 1:
    ER.add_edge(i,j)
else:
    ER.delete_edges(ER.get_eid(i.index,j.index))

最后一行不起作用。我已经尝试了不同的方法来删除i和j之间的边缘,但我似乎无法弄清楚函数。有人可以帮忙吗?

干杯!

1 个答案:

答案 0 :(得分:6)

对我而言,它适用于igraph0.6:

import random
import igraph

N = 10
g = igraph.Graph.Full(N)
i, j = random.sample(range(g.vcount()), 2)
g.delete_edges([(i,j)])
print(g.ecount(), N*(N-1)/2)

从输出可以得出结论,它已经删除了一条边:

44 45.0