nestedrank: Calculates the rank of a species in a matrix sorted for...

Description Usage Arguments Details Value Note Author(s) References See Also Examples

View source: R/nestedrank.R


Ranks species according to their generality, which is measured as the position in the nestedness matrix. A generalist will interact with more species and thus have a rank closer to 1, while specialists (and rare species) will have ranks with higher values.


nestedrank(web, method = "NODF", weighted=TRUE, normalise=TRUE, return.matrix=FALSE)



A matrix with elements of a set (e.g., plants) as rows, elements of a second set (e.g., pollinators) as columns and number of interactions as entries.


One or more of the following: NODF, nodf, binmatnest, wine, sort. See details for details on each method.


For NODF and wine only: should the number of interactions per link be used as weights? See help of nestednodf in vegan for details.


Logical; defaulting to TRUE. Divides the rank-1 by the number of species -1, thereby ranging it between 0 (most generalist) and 1 (most specialised).


Logical, defaulting to FALSE. Should the matrix resulting from the nestedness-sorting be returned as well?


The idea is to re-arrange the network matrix according to its nestedness, so that the most “generalist” species with most links will be in the first row/column and decreasing from there. The nestedness matrix can be computed in different ways. There are four different methods currently available:

NODF (or nodf)

will use vegan's nestednodf-function to arrange the matrix. With weighted=TRUE, which is the default, it will use the actual number of interactions, rather than the number of links


will use the vegan's nestedtemp-function to arrange the matrix. This is only using binary information, so weighting has no effect.


will use the wine-function to arrange the matrix. When weighted=FALSE, wine will be applied to a binary matrix.


will simply sort the matrix by marginal totals (i.e. by number of interactions per species when weighted=TRUE or by number links (=degree) when weighted=FALSE. In this case the rank simply represents the abundance of the species in this network.


A list of nestedness ranks vectors for the lower and higher trophic level (smallest value for the most generalist). If return.matrix=TRUE, a third list entry will contain the nested matrix.


Since nestedness is itself not a straight-forward measure of something ecologically meaningful, also these ranks may or may not be. At least there is a high chance that they represent merely abundance of each species. See example for an idea on how to check for the effect of abundance as such.


Carsten F. Dormann [email protected]


Alarcon, R., Waser, N.M. and Ollerton, J. 2008. Year-to-year variation in the topology of a plant-pollinator interaction network. Oikos 117, 1796–1807

See Also

nested; nestedrank is called by specieslevel


## Not run: 
ranks <- sapply(c("nodf", "binmatnest", "wine", "sort"), function(x) 
  nestedrank(Safariland, method=x)[[2]])
cor(ranks) # high correlation between sort and other indicate that only abundance matters

## End(Not run)

bipartite documentation built on May 22, 2019, 1:02 a.m.