cdlib.algorithms.endntm¶
-
endntm
(g_original: object, clusterings: list = None, epsilon: float = 2) → cdlib.classes.node_clustering.NodeClustering¶ Overlapping community detection algorithm based on an ensemble approach with a distributed neighbourhood threshold method (EnDNTM). EnDNTM uses pre-partitioned disjoint communities generated by the ensemble mechanism and then analyzes the neighbourhood distribution of boundary nodes in disjoint communities to detect overlapping communities.
Parameters: - g_original – a networkx/igraph object
- clusterings – an iterable of Clustering objects (non overlapping node partitions only)
- epsilon – neighbourhood threshold, default 2.
Returns: NodeClustering object
Example: >>> from cdlib import algorithms >>> import networkx as nx >>> G = nx.karate_club_graph() >>> coms_l = [algorithms.louvain(G), algorithms.label_propagation(G), algorithms.walktrap(G)] >>> coms = algorithms.endntm(G, coms_l)
References: Jaiswal, R., & Ramanna, S. Detecting overlapping communities using ensemble-based distributed neighbourhood threshold method in social networks. Intelligent Decision Technologies, (2021), doi:10.3233/IDT-200059.