cdlib.evaluation.cut_ratio

cdlib.evaluation.cut_ratio(graph: Graph, community: object, summary: bool = True) object

现有边(在所有可能的边中)离开社区的比例。

\[f(S) = \frac{c_S}{n_S (n − n_S)}\]

其中 \(c_S\) 是切割大小(社区边界上的边数),\(n_S\) 是社区节点的数量

Parameters:
  • graph – 一个 networkx/igraph 对象

  • 社区 – NodeClustering 对象

  • summary – 布尔值。如果为True,则返回分区的聚合分数,否则返回单个社区的分数。默认值为True

Returns:

如果 summary==True 则返回一个 FitnessResult 对象,否则返回一个浮点数列表。

示例:

>>> from cdlib.algorithms import louvain
>>> from cdlib import evaluation
>>> g = nx.karate_club_graph()
>>> communities = louvain(g)
>>> mod = evaluation.cut_ratio(g,communities)
References:

  1. Fortunato, S.: 图中的社区检测。物理学报告 486(3-5), 75–174 (2010)