Description Usage Arguments Details Value Note Examples

View source: R/distinctiveness_range.R

Computes functional distinctiveness from a site-species matrix (containing
presence-absence or relative abundances) of species with provided functional
distance matrix **considering only species within a given range in the
functional space**. The sites-species matrix should have **sites** in
**rows** and **species** in **columns**, similar to
vegan package defaults.

1 | ```
distinctiveness_range(pres_matrix, dist_matrix, given_range, relative = FALSE)
``` |

`pres_matrix` |
a site-species matrix (presence-absence or relative abundances), with sites in rows and species in columns |

`dist_matrix` |
a species functional distance matrix |

`given_range` |
a numeric indicating the dissimilarity range at which the the influence of other species is not considered anymore |

`relative` |
a logical indicating if distinctiveness should be scaled relatively to the community (scaled by max functional distance among the species of the targeted community) |

The Functional Distinctiveness of a species is the average functional distance from a species to all the other in the given community. It is computed as such:

*
D_i (T) = ((Σ_(j = 0, j != i, T ≥ min(d_ij))^N d_ij * Ab_j) /
(Σ_(j = 0, j != i, T ≥ min(d_ij))^N Ab_j)) *
(1 - Σ_(j = 0, j != i, T ≥ min(d_ij))^N Ab_j),
*

with *D_i* the functional distinctiveness of species *i*, *N*
the total number of species in the community and *d_ij* the
functional distance between species *i* and species *j*. *T*
is the chosen maximal range considered. When presence-absence are used
*Ab_j = 1/N* and the term * ≤ft(1 - \frac{
∑\limits_{
j = 1 ~,
j \neq i ~,
d_{ij} ≤q T}^S Ab_j
}{
N
} \right)* is replaced by 1.
**IMPORTANT NOTE**: in order to get functional rarity indices between 0
and 1, the distance metric has to be scaled between 0 and 1.

a similar matrix from provided `pres_matrix`

with Distinctiveness
values in lieu of presences or relative abundances, species absent from
communities will have an `NA`

value (see `Note`

section)

Absent species should be coded by `0`

or `NA`

in input matrices.

When a species is alone in its community the functional distinctiveness
cannot be computed (denominator = 0 in formula), and its value is assigned
as `NaN`

.

For speed and memory efficiency sparse matrices can be used as input of
the function using `as(pres_matrix, "sparseMatrix")`

from the
`Matrix`

package.
(see `vignette("sparse_matrices", package = "funrar")`

)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | ```
data("aravo", package = "ade4")
# Site-species matrix
mat = as.matrix(aravo$spe)
# Compute relative abundances
mat = make_relative(mat)
# Example of trait table
tra = aravo$traits[, c("Height", "SLA", "N_mass")]
# Distance matrix
dist_mat = compute_dist_matrix(tra)
di = distinctiveness(pres_matrix = mat, dist_matrix = dist_mat)
di[1:5, 1:5]
# Compute distinctiveness for all species in the regional pool
# i.e., with all the species in all the communities
# Here considering each species present evenly in the regional pool
reg_pool = matrix(1, ncol = ncol(mat))
colnames(reg_pool) = colnames(mat)
row.names(reg_pool) = c("Regional_pool")
reg_di = distinctiveness(reg_pool, dist_mat)
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.