second.extinct {bipartite} | R Documentation |
Calculates the consequences of removing a species from a bipartite network. With plotting and slope-estimation functionality.
second.extinct(web, participant = "higher", method = "abun", nrep = 10, details = FALSE)
web |
Web is a matrix representing the interactions observed between higher trophic level species (columns) and lower trophic level species (rows). Usually this will be number of pollinators on each species of plants or number of parasitoids on each species of prey. |
participant |
“high ” (default) or “low ” or “both ”,
depending if you want to exterminate higher trophic level species, lower trophic
level species, or a randomly chosen species of both levels; partial matching. |
method |
Random deletion of a species (“random ”) or according
to its abundance, with least abundant going extinct first (“abundance ”; default). |
nrep |
Number of replicates of extermination sequence. Will not be considered for method abundance. |
details |
Logical; returns details, i.e.~for each replicate the sequence of
secondary extinctions. If set to FALSE (default), replicated runs will be averaged. |
The procedure of this function is simple. For example imagine the web to represent a pollination web, in which pollinators die one by one. Set all entries of a column to zero, see how may rows are now also all-zero (i.e. species that are now not pollinated any more), and count these as secondary extinctions of the primary exterminated pollinator.
Internally, each extermination is achieved by a call to extinction
,
followed by a call to empty
, which counts the number of all-zero columns
and rows.
Although written for pollination webs (hence the nomenclature of pollinator and plant),
it can be similarly applied to other types of bipartite networks. It is called by
networklevel
.
details=FALSE will not work with participant="both", since sequences cannot be averaged, due to different lengths.
Function returns an object of class “bipartite” to ensure proper working of
function plot.bipartite.
If details=FALSE, the returned object contains a matrix with columns representing
the number of species going extinct from one step to the next, averaged across all runs.
If details=FALSE, the returned object will be a list of matrices containing
the number of species going extinct at each step.
The objects attribute “exterminated” gives the name of the trophic level (pollinator
or plant).
Note: The length of an extinction sequence is obviously given by the number of species in the selected trophic level. When setting participant="both", lengths will differ for each replicate run, since it is unpredictable in which sequence species go extinct, and hence how many secondary extinctions will pre-empt further primary extinctions.
Carsten F. Dormann
Memmott, J., Waser, N. M. and Price, M. V. (2004) Tolerance of pollination networks to species extinctions. Proceedings of the Royal Society b 271, 2605–2611.
networklevel
calls second.extinct
; extinction
and empty
are internal helper functions, and slope.bipartite
calculates extinction slopes from the output of second.extinct
.
data(Safariland) (ex <- second.extinct(Safariland, participant="low", method="r", nrep=50, details=TRUE)) (ex <- second.extinct(Safariland, participant="low", method="r", nrep=50, details=FALSE))