Title: Disparity Filter Algorithm for Weighted Networks
Version: 2.2.3
Maintainer: Alessandro Bessi <alessandro.bessi@iusspavia.it>
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 is documented in 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.
Depends: R (≥ 3.1.1), igraph (≥ 1.0.0)
Suggests: testthat
License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
URL: https://github.com/alessandrobessi/disparityfilter
BugReports: https://github.com/alessandrobessi/disparityfilter/issues
LazyData: true
RoxygenNote: 5.0.1
NeedsCompilation: no
Packaged: 2016-04-19 07:36:32 UTC; fr
Author: Alessandro Bessi [aut, cre], Francois Briatte [aut]
Repository: CRAN
Date/Publication: 2016-04-19 13:50:12

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 = igraph::E(graph)$weight,
  directed = igraph::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

if (require(igraph)) {

  # 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)

}