Learn R Programming

ape (version 5.6-2)

as.phylo.formula: Conversion from Taxonomy Variables to Phylogenetic Trees

Description

The function as.phylo.formula (short form as.phylo) builds a phylogenetic tree (an object of class phylo) from a set of nested taxonomic variables.

Usage

# S3 method for formula
as.phylo(x, data = parent.frame(), collapse = TRUE, ...)

Value

an object of class "phylo".

Arguments

x

a right-side formula describing the taxonomic relationship: ~C1/C2/.../Cn.

data

the data.frame where to look for the variables (default to user's workspace).

collapse

a logical value specifying whether to collapse single nodes in the returned tree (see details).

...

further arguments to be passed from other methods.

Author

Julien Dutheil dutheil@evolbio.mpg.de, Eric Marcon and Klaus Schliep

Details

Taxonomic variables must be nested and passed in the correct order: the higher clade must be on the left of the formula, for instance ~Order/Family/Genus/Species. In most cases, the resulting tree will be unresolved and will contain polytomies.

The option collapse = FALSE has for effect to add single nodes in the tree when a given higher level has only one element in the level below (e.g., a monospecific genus); see the example below.

See Also

as.phylo, read.tree for a description of "phylo" objects, multi2di

Examples

Run this code
data(carnivora)
frm <- ~SuperFamily/Family/Genus/Species
tr <- as.phylo(frm, data = carnivora, collapse=FALSE)
tr$edge.length <- rep(1, nrow(tr$edge))
plot(tr, show.node.label=TRUE)
Nnode(tr)
## compare with:
Nnode(as.phylo(frm, data = carnivora, collapse = FALSE))

Run the code above in your browser using DataLab