c.phylo: Building Lists of Trees

View source: R/summary.phylo.R

c.phyloR Documentation

Building Lists of Trees

Description

These functions help to build lists of trees of class "multiPhylo".

Usage

## S3 method for class 'phylo'
c(..., recursive = TRUE)
## S3 method for class 'multiPhylo'
c(..., recursive = TRUE)
.compressTipLabel(x, ref = NULL)
.uncompressTipLabel(x)

Arguments

...

one or several objects of class "phylo" and/or "multiPhylo".

recursive

see details.

x

an object of class "phylo" or "multiPhylo".

ref

an optional vector of mode character to constrain the order of the tips. By default, the order from the first tree is used.

Details

These c methods check all the arguments, and return by default a list of single trees unless some objects are not trees or lists of trees, in which case recursive is switched to FALSE and a warning message is given. If recursive = FALSE, the objects are simply concatenated into a list. Before ape 4.0, recursive was always set to FALSE.

.compressTipLabel transforms an object of class "multiPhylo" by checking that all trees have the same tip labels and renumbering the tips in the edge matrix so that the tip numbers are also the same taking the first tree as the reference (duplicated labels are not allowed). The returned object has a unique vector of tip labels (attr(x, "TipLabel")).

.uncompressTipLabel does the reverse operation.

Value

An object of class "multiPhylo".

Author(s)

Emmanuel Paradis

See Also

summary.phylo, multiphylo

Examples

x <- c(rtree(4), rtree(2))
x
y <- c(rtree(4), rtree(4))
z <- c(x, y)
z
print(z, TRUE)
try(.compressTipLabel(x)) # error
a <- .compressTipLabel(y)
.uncompressTipLabel(a) # back to y
## eventually compare str(a) and str(y)

ape documentation built on May 29, 2024, 10:50 a.m.