我正在使用python igraph从输入文件创建加权图。关键是我需要不同边的数量(因为这是一个加权图)。我知道
graph.ecount()
没有考虑到这一点。我可以读取文件本身并计算不同边缘的数量,但我想知道igraph本身是否具有我可以为ecount设置的函数或属性来计算不同数量的边缘。请注意,我使用以下代码行来创建图表:
graph= Graph.Read_Ncol(file, names=True, weights="if_present", directed=True)
由于
答案 0 :(得分:2)
我不确定为什么权重在这里很重要 - Graph.Read_Ncol
只会将权重存储为边缘属性,g.ecount()
不会考虑它们。这里唯一可能重要的是Graph.Read_Ncol
由于某种原因为你创建了一个多图(在这种情况下,同一对顶点之间可能有多条边)。您可以使用g.simplify(loops=False)
删除多个边(但保留环边),然后调用g.ecount()
。