distinctTopo {adiv}R Documentation

Topology-based Species' Originality


The function calculates three indices of species' originality that rely on the topology of (phylogenetic) trees. Trees with polytomies are allowed.


distinctTopo(phyl, method = c("VW","M","A","full"), standardized = FALSE)



an object inheriting the class phylo (see package ape), phylo4 (see package phylobase), or hclust.


a character or string or a vector of characters/strings. Possible values are "VW", "M", "A" and "full". "VW" is for Vane-Wright et al. index (Vane-Wright et al. 1991); "M" is for May index (May 1990); "A" is for Pavoine et al. index of originality derived from Abouheif (1999) (Pavoine et al. 2008); and "full" returns all indices.


a logical. If FALSE, the minimum score is scaled to 1 as in May (1990). If TRUE, the vector of originalities is divided by its sum (transforming absolute originalities into relative originalities).


A data frame with species as rows and originality indices as columns.


Sandrine Pavoine sandrine.pavoine@mnhn.fr with contributions of Stephane Dray


May, R.M. (1990) Taxonomy as destiny. Nature, 347, 129–130.

Vane-Wright, R.I., Humphries, C.J., Williams, P.H. (1991) What to protect? Systematics and the agony of choice. Biological Conservation, 55, 235–254.

Abouheif, E. (1999) A method for testing the assumption of phylogenetic independence in comparative data. Evolutionary Ecology Research, 1, 895–909.

Pavoine, S., Ollier, S., Pontier, D., Chessel, D. (2008) Testing for phylogenetic signal in phenotypic traits: new matrices of phylogenetic proximities. Theoretical Population Biology, 73, 79–91.

See Also

distinctDis, distinctTree, distinctUltra


## Not run: 
if(require(ape) && require(adephylo) && require(phylobase)){
data(carni70, package = "adephylo")
tre <- read.tree(text=carni70$tre)
U <- distinctTopo(tre, standardized = TRUE)
U.4d <- phylo4d(tre, as.matrix(U))
dotp4d(U.4d, center = FALSE, scale = FALSE)
barp4d(U.4d, center = FALSE, scale = FALSE)
gridp4d(U.4d, center = FALSE, scale = FALSE)

parmar <- par()$mar
table.phylo4d(U.4d, show.node=FALSE, symbol="squares", center=FALSE, scale=FALSE, cex.symbol=2)

## End(Not run)

[Package adiv version 2.1.1 Index]