cdlib.evaluation.rand_index

cdlib.evaluation.rand_index(first_partition: object, second_partition: object) MatchingResult

This function calculates the Rand index between two clusterings.

\[RI = \frac{(N11 + N00)}{(N11 + N10 + N01 + N00)}\]
Parameters:
  • first_partition – NodeClustering object

  • second_partition – NodeClustering object

Returns:

MatchingResult object

Example:

>>> from cdlib import evaluation, algorithms
>>> import networkx as nx
>>> g = nx.karate_club_graph()
>>> louvain_communities = algorithms.louvain(g)
>>> leiden_communities = algorithms.leiden(g)
>>> evaluation.rand_index(louvain_communities,leiden_communities)
Reference:

William M Rand. Objective Criteria for the Evaluation of Clustering Methods. Journal of the American Statistical Association, 66(336):846, 1971.

Note

The function requires the clusim library to be installed. You can install it via pip: pip install clusim