tnetwork.DCD.iterative_match

tnetwork.DCD.iterative_match(dynNetSN, CDalgo='louvain', match_function=<function jaccard>, threshold=0.3, elapsed_time=False, multithread=False)[source]

Community Detection by iterative detection and matching

This algorithm is inspired by the one proposed by Greene et al., [1] but additionally to the detection of match between communities in consecutive snapshots, a post process assign labels to communities, based on the following rules:

  • A community “send” its label to the community the most similar in the next snapshot
  • If a community “receives” several labels from communities in the previous snapshot, it selects the one of the community the most similar.

[1]Greene, Derek, Donal Doyle, and Padraig Cunningham. “Tracking the evolution of snapshot_communities in dynamic social networks.” 2010 international conference on advances in social networks analysis and mining. IEEE, 2010.

Parameters:
  • dynNetSN – a dynamic network
  • CDalgo – community detection to apply at each step. Can be a function returning a clustering, or the string “louvain” or “smoothedLouvain
  • match_function – a function that gives a matching score between two communities (two sets of nodes). Default: jaccard. If None, no matching is done
  • threshold – a threshold for match_function below which snapshot_communities are not matched
  • multithread – If true, run in parallel. Some bugs in macOs/windows.