Package 'disparityfilter'

Title: Disparity Filter Algorithm for Weighted Networks
Description: The disparity filter algorithm is a network reduction technique to identify the 'backbone' structure of a weighted network without destroying its multi-scale nature. The algorithm was developed by M. Angeles Serrano, Marian Boguna and Alessandro Vespignani in "Extracting the multiscale backbone of complex weighted networks", Proceedings of the National Academy of Sciences 106 (16), 2009. This implementation of the algorithm supports both directed and undirected networks.
Authors: Alessandro Bessi [aut, cre], Francois Briatte [aut]
Maintainer: Alessandro Bessi <[email protected]>
License: GPL (>= 2)
Version: 2.2.0
Built: 2025-02-25 05:01:14 UTC
Source: https://github.com/alessandrobessi/disparityfilter

Help Index


Extract the backbone of a weighted network using the disparity filter

Description

Given a weighted graph, backbone identifies the 'backbone structure' of the graph, using the disparity filter algorithm by Serrano et al. (2009).

Usage

backbone(graph, weights = E(graph)$weight, directed = is_directed(graph),
  alpha = 0.05)

Arguments

graph

The input graph.

weights

A numeric vector of edge weights, which defaults to E(graph)$weight.

directed

The directedness of the graph, which defaults to the result of is_directed.

alpha

The significance level under which to preserve the edges, which defaults to 0.05.

Value

An edge list corresponding to the 'backbone' of the graph, i.e. the edges of the initial graph that were preserved by the null model that the disparity filter algorithm implements.

Author(s)

Serrano et al. (2009); R implementation by Alessandro Bessi and Francois Briatte

References

Serrano, M.A., Boguna, M. and Vespignani, A. (2009). Extracting the multiscale backbone of complex weighted networks. Proceedings of the National Academy of Sciences 106, 6483-6488.

Examples

# undirected network
g <- sample_pa(n = 250, m = 5, directed = FALSE)
E(g)$weight <- sample(1:25, ecount(g), replace = TRUE)
backbone(g)

# directed network
g <- sample_pa(n = 250, m = 5, directed = TRUE)
E(g)$weight <- sample(1:25, ecount(g), replace = TRUE)
backbone(g)