C.score {bipartite} | R Documentation |
Calculates the C-score for all pollinator species; the C-score represents the average number of checkerboard units for each unique specis pair.
C.score(web, normalise = TRUE, FUN = mean, ...)
web |
A matrix with pollinators as columns and plants as rows. Alternatively, when used on e.g. species occurrences across islands, rows are islands. |
normalise |
Logical; if TRUE (default), the C-score is ranged between 0 (no checkerboards) and 1 (only checkerboards). For FALSE the standard value of mean number of checkerboard pairs is returned. This is somewhat awkward for comparing different data sets, that's what the normalisation is for. |
FUN |
Function to use when summarising the C-scores for each pairwise comparison. Defaults to mean , but other useful functions could be median (because C-scores are rather skewed) or hist (for a nice graph). |
... |
Options to be passed on to FUN, e.g. na.rm=T for matrices with many zeros and normalise=TRUE. |
As a first step, any quantitative matrix is converted to a binary matrix of presences and absences.
Then, the formula given in Stone and Roberts (1990) is calculated for all species combinations, by calling designdist
from the package vegan. See code for details.
Returns whatever the FUN produces as output. Default would be a single value, i.e.~the mean C-score of the web.
The normalisation uses the following logic: let A and B be the number of occurrences of each of the two species, respectively. Then J is the number of sites where both occur and P the total number of sites. The maximum value for C in each comparison is A*B, when they are exactly complementary and hence J=0. However, if (A+B)>length of vector(P), then there will be some co-occurrences and hence J>0=(A+B-P). The general maximum then becomes (A-A-B+P)(B-A-B+P)=(P-B)(P-A). For (A+B)<P, maximum is AB.
The minimum is set to 0.
Carsten F. Dormann
Gotelli, N.J. and Rohde, K. (2002) Co-occurrence of ectoparasites of marine fishes: a null model analysis. Ecology Letters 5, 86–94
Stone, L. and Roberts, A. (1990) The checkerboard score and species distributions. Oecologia 85, 74–79
V.ratio
for another measure of species associations, nestedchecker
in vegan, which also calculates the C-score (even yielding the same value), but not its normalised version
m <- matrix(c(1,0,0, 1,1,0, 1,1,0, 0,1,1, 0,0,1), 5,3,TRUE) C.score(m) C.score(m, normalise=FALSE) C.score(m, normalise=FALSE, FUN=print)