我编写了这个代码来生成具有幂律度分布的无标度网络。
import networkx as nx
import random
N = 1000
exponent = 2.2
test = [int(random.paretovariate(exponent-1)) for i in range(N)]
graph = nx.configuration_model(test)
print("number of self-loops : ", graph.number_of_selfloops())
但我要面对这样的错误:
AttributeError:“MultiGraph”对象没有属性“number_of_selfloops”
我不明白是什么问题,我如何解决它。还有其他方法可以用networkX生成这样的网络吗?(我不希望自循环和多链接被移除)
发布于 2020-04-10 16:37:32
正如configuration_model
文档中所述,该函数返回一个MultiGraph
,它没有方法number_of_selfloops
,但您仍然可以使用nx.number_of_selfloops
方法,该方法也适用于MultiGraph
(NetworkX更改了对此类方法的调用方式),或者简单地用non_multi_graph = nx.Graph(graph)
创建一个通常的图形。
https://stackoverflow.com/questions/61131416
复制相似问题