Closed valentinitnelav closed 3 years ago
Many thanks for the question and extensive documentation! The question "Why are some indices dependent on the sequence of species in the matrix?" is a simple: "Ties."
Let's take discrepancy: This uses only the binary information, i.e. link or no link. Many species now have the same number of links, and there is no natural sequence in which these should be sorted. bipartite::discrepancy does not sort within ties, so when you shuffle the rows/columns, you get different sequences and results. vegan::nesteddisc goes through (up to 200) iterations to re-arrange the matrix for maximal discrepancy, i.e. find some "natural" sequence within ties. Often that works, but not necessarily (see the functions help page). I think vegan::nesteddisc is better than bipartite::discrepancy and have just changed "networklevel" accordingly.
The same holds for nestedness and the simulation of extinction sequences (where I did not change anything in the code).
The ties-problem arises particularly in networks with many singleton observations, or low number of observations overall. There is nothing we can do about it (I think), but I will add some notes in networklevel and specieslevel to make this clearer.
My experience is that in comparison to null models or among different networks, the tie-induced variability of indices typically is unproblematic. But for any specific situation, it is worth knowing why this variability arises.
Thank you for this great work on
bipartite
!I observed that the order of the species in the adjacency matrix makes a difference with some indices when using the function
networklevel
(Not shown below, but this also happens withspecieslevel
). Below is an example using theSafariland
data.The species' names come in a particular order. I noticed that if I alter that order, I can get differences in some network indices and this seems unexpected for me. Would you help me understand why is it so?
Also if I order alphabetically the column names, I get different results:
Information About the R Session: