# Calculates the rank of a species in a matrix sorted for maximum nestedness

### Description

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.

### Usage

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

### Arguments

`web` |
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. |

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

`weighted` |
For NODF and wine only: should the number of interactions per link be used as weights? See help of |

`normalise` |
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). |

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

### Details

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- binmatnest
will use the vegan's

`nestedtemp`

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

`wine`

-function to arrange the matrix. When weighted=FALSE, wine will be applied to a binary matrix.- sort
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.

### Value

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.

### Note

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.

### Author(s)

Carsten F. Dormann carsten.dormann@biom.uni-freiburg.de

### References

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`

### Examples

1 2 3 4 5 6 | ```
## 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)
``` |