lswl_plus(g_original: object, strength_type: int = 1, merge_outliers: bool = True, detect_overlap: bool = False) → cdlib.classes.node_clustering.NodeClustering

LSWL+ is capable of finding a partition with overlapping communities or without them, based on user preferences. This method can also find outliers (peripheral nodes of the graph that are marginally connected to communities) and hubs (nodes that bridge the communities)

Supported Graph Types

Undirected Directed Weighted
Yes No Yes
  • g_original – a networkx/igraph object
  • strength_type – 1 strengths between [-1,+1] or, 2 strengths between [0,1]. Default, 2.
  • merge_outliers – If outliers need to merge into communities. Default, True.
  • detect_overlap – If overlapping communities need to be detected. Default, False

NodeClustering object

>>> from cdlib import algorithms
>>> import networkx as nx
>>> G = nx.karate_club_graph()
>>> coms = algorithms.lswl_plus(G)

Fast Local Community Discovery: Relying on the Strength of Links (submitted for KDD 2021)


Reference implementation: