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