bootcoldist: Bootstrap colour distance confidence intervals

View source: R/bootcoldist.R

bootcoldistR Documentation

Bootstrap colour distance confidence intervals


Uses a bootstrap procedure to generate confidence intervals for the mean colour distance between two or more samples of colours


bootcoldist(vismodeldata, by, boot.n = 1000, alpha = 0.95, raw = FALSE, ...)



(required) quantum catch colour data. Can be the result from vismodel(), or colspace(). Data may also be independently calculated quantum catches, in the form of a data frame with columns representing photoreceptors.


(required) a numeric or character vector indicating the group to which each row from the object belongs to.


number of bootstrap replicates (defaults to 1000)


the confidence level for the confidence intervals (defaults to 0.95)


should the full set of bootstrapped distances (equal in length to boot.n) be returned, instead of the summary distances and CI's? Defaults to FALSE.


other arguments to be passed to coldist(). Must at minimum include n and weber. See coldist() for details.


You can customise the type of parallel processing used by this function with the future::plan() function. This works on all operating systems, as well as high performance computing (HPC) environment. Similarly, you can customise the way progress is shown with the progressr::handlers() functions (progress bar, acoustic feedback, nothing, etc.)


a matrix including the empirical mean and bootstrapped confidence limits for dS (and dL if achromatic = TRUE), or a data.frame of raw bootstraped dS (and dL if achromatic = TRUE) values equal in length to boot.n.


Maia, R., White, T. E., (2018) Comparing colors using visual models. Behavioral Ecology, ary017 \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1093/beheco/ary017")}


# Run the receptor-noise limited model, using the visual phenotype
# of the blue tit
vm <- vismodel(sicalis, achromatic = "bt.dc", relative = FALSE)
gr <- gsub("ind..", "", rownames(vm))
bootcoldist(vm, by = gr, n = c(1, 2, 2, 4), weber = 0.1, weber.achro = 0.1)

# Run the same again, though as a simple colourspace model
vm <- vismodel(sicalis, achromatic = "bt.dc")
space <- colspace(vm)
gr <- gsub("ind..", "", rownames(space))
bootcoldist(space, by = gr)

# Estimate bootstrapped colour-distances for a more 'specialised' model,
# like the colour hexagon
data(flowers) <- vismodel(flowers,
  visual = "apis", qcatch = "Ei", relative = FALSE,
  vonkries = TRUE, achromatic = "l", bkg = "green"
flowers.hex <- colspace(, space = "hexagon")
pop_group <- c(rep("pop_1", nrow(flowers.hex) / 2), rep("pop_2", nrow(flowers.hex) / 2))
bootcoldist(flowers.hex, by = pop_group)

pavo documentation built on Sept. 24, 2023, 5:06 p.m.