cdlib.algorithms.leiden¶
- cdlib.algorithms.leiden(g_original: object, initial_membership: list | None = None, weights: list | None = None) NodeClustering¶
Leiden算法是Louvain算法的改进。 Leiden算法包括三个阶段: (1) 节点的局部移动, (2) 分区的细化 (3) 基于细化后的分区进行网络的聚合,使用未细化的分区为聚合网络创建初始分区。
支持的图表类型
无向
有向
加权
是的
否
是的
- Parameters:
g_original – 一个 networkx/igraph 对象
initial_membership – 整数列表 分区的初始成员资格。如果
None则默认为单例分区。默认值为 Noneweights – 双精度列表,或边属性 边的权重。可以是可迭代对象或边属性。默认值为 None
- Returns:
节点聚类对象
- Example:
>>> from cdlib import algorithms >>> import networkx as nx >>> G = nx.karate_club_graph() >>> coms = algorithms.leiden(G)
- References:
Traag, Vincent, Ludo Waltman, 和 Nees Jan van Eck. 从Louvain到Leiden:保证良好连接的社区。 arXiv 预印本 arXiv:1810.08473 (2018).