random_clustered_graph#

random_clustered_graph(joint_degree_sequence, create_using=None, seed=None)[源代码]#

生成一个具有给定关节独立边度和三角形度序列的随机图。

这使用类似配置模型的方法,通过随机分配边来匹配给定的关节度序列来生成随机图(具有平行边和自循环)。

联度序列是形式为的整数对的列表 \([(d_{{1,i}}, d_{{1,t}}), \dotsc, (d_{{n,i}}, d_{{n,t}})]\) 。根据这个列表,顶点 \(u\) 是一名成员 \(d_{{u,t}}\) 三角形和哈希数 \(d_{{u, i}}\) 其他边。数字 \(d_{{u,t}}\) 是不是 三角度\(u\) 以及电话号码 \(d_{{u,i}}\) 是不是 独立边度

参数
joint_degree_sequence整数对列表

每个列表条目对应于节点的独立边度和三角度。

create_usingNetworkX图形构造函数,可选(默认多图形)

要创建的图表类型。如果是图表实例,则在填充之前清除。

seed整数、随机状态或无(默认)

随机数生成状态的指示器。见 Randomness .

返回
GMultiGraph

具有指定度序列的图。节点从0开始使用与deg_equence中的位置相对应的索引进行标记。

加薪
NetworkXError

如果独立的边度序列和不是偶数,或者三角形度序列和不能被3整除。

笔记

正如米勒所描述的那样 [1] (另见纽曼 [2] 以获取等效描述)。

由于此函数返回具有自循环和平行边的图,因此允许使用非图形度序列(某些简单图无法实现)。如果独立度序列没有偶数和或三角形度序列和不能被3整除,则会引发异常。

这种配置模型(如构造过程)会导致重复的边和循环。您可以删除自循环和平行边(见下文),这可能导致图形没有指定确切的度数序列。这种“有限尺寸效应”随着图形尺寸的增大而减小。

工具书类

1

乔尔·C·米勒。”随机聚集网络中的渗透和流行病”。在:物理审查。统计、非线性和软物质物理80(2第1部分,2009年8月)。

2

M.E.J.纽曼。”带有聚类的随机图”。在:物理评论信103(2009年7月5日)

实例

>>> deg = [(1, 0), (1, 0), (1, 0), (2, 0), (1, 0), (2, 1), (0, 1), (0, 1)]
>>> G = nx.random_clustered_graph(deg)

要删除平行边,请执行以下操作:

>>> G = nx.Graph(G)

要删除自循环:

>>> G.remove_edges_from(nx.selfloop_edges(G))