UnshiftTree() adds a phylogenetic tree to the start of a list of trees. This is useful where the class of a list of trees is unknown, or where names of trees should be retained.

UnshiftTree(add, treeList)



Tree to add to the list, of class phylo.


A list of trees, of class list, multiPhylo, or, if a single tree, phylo.


UnshiftTree() returns a list of class list or multiPhylo

(following the original class of treeList), whose first element is the tree specified as `add.


Caution: adding a tree to a multiPhylo object whose own attributes apply to all trees, for example trees read from a Nexus file, causes data to be lost.

See also

c() joins a tree or series of trees to a multiPhylo object, but loses names and does not handle lists of trees.


Martin R. Smith (martin.smith@durham.ac.uk)


forest <- as.phylo(0:5, 6)
tree <- BalancedTree(6)

UnshiftTree(tree, forest)
#> 7 phylogenetic trees
UnshiftTree(tree, tree)
#> 2 phylogenetic trees