Analyzing Partial Rankings in Networks

Implements methods for centrality related analyses of networks. While the package includes the possibility to build more than 20 indices, its main focus lies on index-free assessment of centrality via partial rankings obtained by neighborhood-inclusion or positional dominance. These partial rankings can be analyzed with different methods, including probabilistic methods like computing expected node ranks and relative rank probabilities (how likely is it that a node is more central than another?). The methodology is described in depth in the vignettes and in Schoch (2018) .


CRAN Status Badge CRAN Downloads Travis-CI Build Status codecov

Overview

netrankr is an R package to analyze partial rankings in the context of networks centrality. While the package includes the possibility to build a variety of indices, its main focus lies on index-free assessment of centrality. Computed partial rankings can be analyzed with a variety of methods. These include probabilistic methods like computing expected node ranks and relative rank probabilities (how likely is it that a node is more central than another?).

Most implemented methods are very general and can be used whenever partial rankings have to be analysed.

Visit the online manual for more Details.

Install

To install from CRAN:

 install.packages("netrankr")

To install the developer version from github:

devtools::install_github("schochastics/netrankr")

Details

Check out the online manual for more help.

The core functions of the package are:

  • Computing the neighborhood inclusion preorder with neighborhood_inclusion(). The resulting partial ranking is the foundation for any centrality related analysis on undirected and unweighted graphs. More details can be found in the dedicated vignette: vignette("neighborhood_inclusion",package="netrankr"). A generalizded version of neighborhood inclusion is implemented in positional_dominance(). See vignette("positional_dominance",package="netrankr") for help.

  • Constructing graphs with a unique centrality ranking with threshold_graph(). This class of graphs, known as threshold graphs, can be used to benchmark centrality indices, since they only allow for one ranking of the nodes. For more details consult the vignette: vignette("threshold_graph",package="netrankr").

  • Computing probabilistic centrality rankings. The package includes several function to calculate rank probabilities of nodes in a network, including expected ranks (how central do we expect a node to be?) and relative rank probabilities (how likely is it that a node is more central than another?). These probabilities can either be computed exactly for small networks (exact_rank_prob()), based on an almost uniform sample (mcmc_rank_prob()) or approximated via several heuristics (approx_rank_expected(),approx_rank_relative()). Consult vignette('probabilistic_cent',package='netrankr') for more information and vignette('benchmarks',package='netrankr') for applicability.

  • Although the focus of the package lies on an index-free assessement of centrality, the package provides the possibility to build a variety of indices. Consult vignette('centrality_indices',package='netrankr') for more information.

The package includes several additional vignettes, which can be viewed with browseVignettes(package = "netrankr") or online

News

netrankr 0.2.1

  • fixed a bug in index_builder which prevented the building of self defined indices
  • fixed a still existing bug in transitive_reduction()
  • added type = weights in indirect_relations()
  • type = "identity" in indirect_relations() is now deprecated. Use type = "adjacency" instead.
  • type = "weight" added to indirect_relations() to return the weighted adjacency matrix
  • vertex names are now properly added as column and rownames to matrices produced by indirect_relations() and exact_rank_prob().

netrankr 0.2.0

  • added Rstudio addin to build more than 20 centrality indices
  • added indirect relations: dist_lf,dist_walk, depend_netflow, depend_exp, depend_rsps, depend_rspn, depend_curflow, dist_rwalk, dist_walk
  • API breaking: changed "dependencies" to "depend_sp" in indirect_relations()
  • API breaking: changed "geodesic" to "dist_sp" in indirect_relations()
  • API breaking: changed "resistance" to "dist_resist" in indirect_relations()
  • The above old types still work in this version
  • changed require to library in examples

netrankr 0.1.1

  • fixed a bug in transitive_reduction()
  • fixed some errors in the documentation of exact_rank_prob()
  • rephrasing of some strong statements

netrankr 0.1.0

  • first public release

netrankr 0.0.5

  • most function reimplemented in C++ for efficiency.
  • vignettes added: browseVignettes("netrankr")
  • added visualization function plot_rank_intervals()
  • spell checked and extended help

netrankr 0.0.1-0.0.4

initial builds, predominantely written in R.

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("netrankr")

0.2.1 by David Schoch, 10 months ago


https://schochastics.github.io/netrankr


Report a bug at https://github.com/schochastics/netrankr/issues


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


Authors: David Schoch [aut, cre] , Julian M├╝ller [ctb]


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports igraph, Rcpp

Suggests knitr, rmarkdown, magrittr, ggplot2, testthat, shiny, miniUI, rstudioapi

Linking to Rcpp, RcppArmadillo

System requirements: C++11


Depended on by parsec.

Suggested by tidygraph.


See at CRAN