# distRoot: Compute the distance of tips to the root In adephylo: Exploratory Analyses for the Phylogenetic Comparative Method

## Description

The function `distRoot` computes the distance of a set of tips to the root. Several distances can be used, defaulting to the sum of branch lengths.

## Usage

 ```1 2``` ```distRoot(x, tips = "all", method = c("patristic", "nNodes", "Abouheif", "sumDD")) ```

## Arguments

 `x` a tree of class `phylo`, phylo4 or phylo4d. `tips` A vector of integers identifying tips by their numbers, or a vector of characters identifying tips by their names. `method` a character string (full or abbreviated without ambiguity) specifying the method used to compute distances ; possible values are: - `patristic`: patristic distance, i.e. sum of branch lengths - `nNodes`: number of nodes on the path between the nodes - `Abouheif`: Abouheif's distance (see details) - `sumDD`: sum of direct descendants of all nodes on the path (see details)

## Details

`Abouheif` distance refers to the phylogenetic distance underlying the test of Abouheif (see references). Let P be the set of all the nodes in the path going from `node1` to `node2`. Let DDP be the number of direct descendants from each node in P. Then, the so-called 'Abouheif' distance is the product of all terms in DDP.

`sumDD` refers to a phylogenetic distance quite similar to that of Abouheif. We consider the same sets P and DDP. But instead of computing the product of all terms in DDP, this distance computes the sum of all terms in DDP.

## Value

A numeric vector containing one distance value for each tip.

## Author(s)

Thibaut Jombart tjombart@imperial.ac.uk

## References

Pavoine, S.; Ollier, S.; Pontier, D. & Chessel, D. (2008) Testing for phylogenetic signal in life history variable: Abouheif's test revisited. Theoretical Population Biology: 73, 79-91.

`distTips` which computes the same phylogenetic distances, but between tips.
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13``` ```if(require(ape) & require(phylobase)){ ## make a tree x <- as(rtree(50),"phylo4") ## compute 4 different distances met <- c("patristic","nNodes","Abouheif","sumDD") D <- lapply(met, function(e) distRoot(x, method=e) ) names(D) <- met D <- as.data.frame(D) ## plot these distances along with the tree temp <- phylo4d(x, D) table.phylo4d(temp, show.node=FALSE, cex.lab=.6) } ```