Learn R Programming

ape (version 5.5)

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, ...)

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.

Value

an object of class "phylo".

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
# NOT RUN {
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