Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

C.score

Calculates the (normalised) mean number of checkerboard combinations (C-score) in a matrix


Description

Calculates the C-score for all higher-level species; the C-score represents the average number of checkerboard units for each unique species pair.

Usage

C.score(web, normalise = TRUE, FUN = mean, ...)

Arguments

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.

Details

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.

Value

Returns whatever the FUN produces as output. Default would be a single value, i.e. the mean C-score of the web.

Note

The normalisation, since Jan. 2015, is by brute force: the 1s and 0s are distributed for each pairwise comparison for maximum checkerboardness. (The previously used approach was incorrect!) As a consequence, large matrices will take some time to compute.

The minimum is set to 0.

Author(s)

Carsten F. Dormann

References

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

Examples

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)

bipartite

Visualising Bipartite Networks and Calculating Some (Ecological) Indices

v2.16
GPL
Authors
Carsten F. Dormann, Jochen Fruend and Bernd Gruber, with additional code from Stephen Beckett, Mariano Devoto, Gabriel Felix, Jose Iriondo, Tove Opsahl, Rafael Pinheiro, Rouven Strauss and Diego Vazquez, also based on C-code developed by Nils Bluethgen, Aaron Clauset/Rouven Strauss and Miguel Rodriguez-Girones
Initial release
2021-02-08

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.