我不敢相信我在这方面遇到了困难,但我们在这......这应该是直截了当的,这是我的代码:
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))
Run Code Online (Sandbox Code Playgroud)
最后一行不起作用.我已经尝试了不同的方法来删除i和j之间的边缘,但我似乎无法弄清楚函数.有人可以帮忙吗?
干杯!
对我来说,它适用于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)
Run Code Online (Sandbox Code Playgroud)
从输出可以得出结论,它删除了一个边缘:
44 45.0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1933 次 |
| 最近记录: |