Community Detection by Scaled Null-Adjusted Persistence

Finds the vertex partition of an undirected graph that maximises a persistence-based objective, using the Milano local-search algorithm. Three related quality measures are supported: the persistence probability of a community, its null-adjusted persistence (NAP), and the scaled null-adjusted persistence (Scaled-NAP), which interpolates between NAP and modularity. The methods are described in Avellone et al. (2023) and Avellone et al. (2025) .


scalednap

The goal of scalednap is to …

Installation

You can install the stable version of scalednap from CRAN with:

install.packages("scalednap")

If you want to try the latest development version with the newest updates, you can install it from CRAN using:

# install.packages("pak")
pak::pak("aavellone/scalednap-r")

Example

This is a basic example which shows you how to solve a common problem using scalednap:

library(scalednap)

# --- EXAMPLE 1: Standard input (vectors and matrices) ---
edg <- c(1, 2, 1, 3, 1, 4, 2, 3, 3, 4, 4, 5, 5, 6, 5, 7, 6, 7)
edge_list <- matrix(edg, ncol = 2, byrow = TRUE)
vertex <- c(1, 2, 3, 4, 5, 6, 7)

cluster_milano(x = vertex, edge_list = edge_list)
#> $membership
#> [1] 1 1 1 1 2 2 2
#> 
#> $score
#> [1] 0.7662338
#> 
#> $seed
#> [1] "3563829245"

# --- EXAMPLE 2: igraph input ---
if (requireNamespace("igraph", quietly = TRUE)) {
  g <- igraph::make_ring(10)
  cluster_milano(g)
}
#> $membership
#>  [1] 1 1 2 2 3 3 4 4 5 5
#> 
#> $score
#> [1] 1.5
#> 
#> $seed
#> [1] "806094222"

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("scalednap")

1.0.0 by Alessandro Avellone, 2 months ago


https://github.com/aavellone/scalednap-r


Report a bug at https://github.com/aavellone/scalednap-r/issues


Browse source code at https://github.com/cran/scalednap


Authors: Alessandro Avellone [aut, cre] , Paolo Bartesaghi [aut] , Stefano Benati [aut] , Rosanna Grassi [aut]


Documentation:   PDF Manual  


GPL (>= 2) license


Suggests igraph, testthat

System requirements: C++20


See at CRAN