Generates null models for network analysis by considering external abundances
An extension of r2dtable which rescales marginal totals according to independent data
number of null models to be generated.
Web is a matrix representing the interactions observed between higher level species (columns) and lower level species (rows).
Optional vector of externally measured abundances of the higher level. If missing (NULL) it will be replaced by column totals.
Optional vector of externally measured abundances of the lower level. If missing (NULL) it will be replaced by row totals.
The underlying function is
r2dtable, which requires a vector of row and column totals, respectively. In function
nullmodel, these marginal totals are computed from the observed interaction matrix. Here, external abundances can be provided. These will be rescaled and combined with the observed marginal total to construct new row and column vectors for
If neither row nor column abundances are provided this function will be identical to
Returns a list of
N null model-generated networks. Species names are (obviously) dropped.
Since the function contains a rounding operation, it also has to include a re-distribution of 1s to keep all species in the system. That means, if one species has been observed in the external abundances extremely rarely (compared to the others), it will be overrepresented in this null model, because otherwise it would have to be dropped altogether! If you have a better solution, please let me know.
Carsten F. Dormann email@example.com
1 2 3 4 5 6 7 8 9 10 11 12
## Not run: abun.lower <- c(15,5,2,7,4,8,6,0.01,6) set.seed(2) (abun.higher <- rpois(27, lambda=4)) abun.higher <- 0.001 sum(ext.polls) ## note: external abundances do not sum up; this is intentional!! r2dexternal(2, Safariland, abun.higher=abun.higher, abun.lower=abun.lower) r2dexternal(2, Safariland, abun.higher=abun.higher) ## End(Not run)