fundiversity provides a lightweight package to compute common functional diversity indices. To a get a glimpse of what fundiversity can do refer to the introductory vignette. The package is built using clear, public design principles inspired from our own experience and user feedback.


You can install the stable version from CRAN with:


Alternatively, you can install the development version with:

install.packages("fundiversity", repos = "")


fundiversity lets you compute six functional diversity indices: Functional Richness with fd_fric(), intersection with between convex hulls with fd_fric_intersect(), Functional Divergence with fd_fdiv(), Rao’s Quadratic Entropy with fd_raoq(), Functional Dispersion with fd_fdis() and Functional Evenness with fd_feve(). You can have a brief overview of the indices in the introductory vignette.

All indices can be computed either using global trait data or at the site-level:


# Get trait data included in the package

# Compute Functional Richness of all birds included
#>   site     FRic
#> 1   s1 230967.7

# Compute Functional Divergence
#>   site      FDiv
#> 1   s1 0.7282172

# Compute Rao's Quadratic Entropy
#>   site        Q
#> 1   s1 170.0519

# Compute Functional Dispersion
#>   site     FDis
#> 1   s1 146.2072

# Compute Functional Evenness
#>   site      FEve
#> 1   s1 0.3743341

To compute Rao’s Quadratic Entropy, the user can also provide a distance matrix between species directly:

dist_traits_birds = as.matrix(dist(traits_birds))

fd_raoq(traits = NULL, dist_matrix = dist_traits_birds)
#>   site        Q
#> 1   s1 170.0519

Function Summary

Function Name Index Name Parallelizable
fd_fric() FRic
fd_fric_intersect() FRic_intersect
fd_fdiv() FDiv
fd_feve() FEve
fd_fdis() FDis
fd_raoq() Rao’s Q


Thanks to the future.apply package, all functions (except fd_raoq()) within fundiversity support parallelization through the future backend. To toggle parallelization follow the future syntax:

#>   site      FDiv
#> 1   s1 0.7282172

For more details please refer to the parallelization vignette or use vignette("parallel", package = "fundiversity") within R.

Available functional diversity indices

According to Pavoine & Bonsall (2011) classification, functional diversity indices can be classified in three “domains” that assess different properties of the functional space: richness, divergence, and regularity. fundiversity provides function to compute indices that assess this three facets at the site scale:

Scale Richness Divergence Evenness
(= among sites)
FRic with fd_fric() FDiv with fd_fdiv()
Rao’s QE with fd_raoq()
FDis with fd_fdis()
FEve with fd_feve()
(= between sites)
FRic pairwise intersection with fd_fric_intersect()
alternatives available in betapart
available in entropart, betapart or hillR available in BAT