random_partition_graph#

random_partition_graph(sizes, p_in, p_out, seed=None, directed=False)[source]#

返回具有指定大小分区的随机分区图。

分区图是一个社区图,其大小由 sizes 中的 s 定义。同一组中的节点以概率 p_in 连接,不同组中的节点以概率 p_out 连接。

Parameters:
sizes整数列表

组的大小

p_in浮点数

组内边的概率

p_out浮点数

组间边的概率

directed布尔值, 可选, 默认=False

是否创建有向图

seed整数, random_state, 或 None (默认)

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

Returns:
GNetworkX 图或 DiGraph

大小为 sum(gs) 的随机分区图

Raises:
NetworkXError

如果 p_in 或 p_out 不在 [0,1] 范围内

Notes

这是 [1] 中描述的 planted-l-partition 的泛化。它允许创建任意大小的组。

分区存储为图属性 ‘partition’。

References

[1]

Santo Fortunato ‘Community Detection in Graphs’ Physical Reports Volume 486, Issue 3-5 p. 75-174. https://arxiv.org/abs/0906.0612

Examples

>>> G = nx.random_partition_graph([10, 10, 10], 0.25, 0.01)
>>> len(G)
30
>>> partition = G.graph["partition"]
>>> len(partition)
3