hull.build: Build convex hull hypervolumes.

View source: R/BAT.R

hull.buildR Documentation

Build convex hull hypervolumes.

Description

Builds convex hull hypervolumes for each community from incidence and trait data.

Usage

hull.build(
  comm,
  trait,
  distance = "gower",
  weight = NULL,
  axes = 0,
  convert = NULL
)

Arguments

comm

A sites x species matrix, data.frame or vector, with incidence data about the species in the community.

trait

A species x traits or axes matrix or data.frame (often from hyper.build) or, alternatively, a dist object.

distance

One of "gower" or "euclidean". Not used if trait is a dist object.

weight

A vector of column numbers with weights for each variable. Its length must be equal to the number of columns in trait. Only used if axes > 0 and if trait is not a dist object.

axes

If 0, no transformation of data is done. If 0 < axes <= 1 a PCoA is done with Gower/euclidean distances and as many axes as needed to achieve this proportion of variance explained are selected. If axes > 1 these many axes are selected.

convert

A vector of column numbers, usually categorical variables, to be converted to dummy variables. Only used if axes > 0 and if trait is not a dist object.

Details

The hypervolumes can be constructed with the given data or data can be transformed using PCoA after traits are dummyfied (if needed) and standardized (always). Beware that if transformations are required, all communities to be compared should be built simultaneously to guarantee comparability. In such case, one might want to first run hyper.build and use the resulting data in different runs of hull.build. See function hyper.build for more details.

Value

A 'convhulln' object or a list, representing the hypervolumes of each community.

Examples

comm = rbind(c(1,3,0,5,3), c(3,2,5,0,0))
colnames(comm) = c("SpA", "SpB", "SpC", "SpD", "SpE")
rownames(comm) = c("Site 1", "Site 2")

trait = data.frame(body = c(1,2,3,4,4), beak = c(1,5,4,1,2))
rownames(trait) = colnames(comm)

hv = hull.build(comm[1,], trait)
plot(hv)
hvlist = hull.build(comm, trait)
plot(hvlist[[2]])
hvlist = hull.build(comm, trait, axes = 2, weight = c(1,2))
plot(hvlist[[1]])

BAT documentation built on May 29, 2024, 7:35 a.m.

Related to hull.build in BAT...