[Phylobase-devl] phylo vs phylo4 'order' attribute conflict
regetz at nceas.ucsb.edu
Tue Apr 14 02:14:13 CEST 2009
I'd be happy to enter this via the R-forge bug tracker instead, but it
doesn't look like there is a lot going on there so I'll start out on the
When it exists, the 'order' attribute of a phylo object can be either
"cladewise" or "pruningwise". This attribute is preserved when coercing
from phylo to phylo4. However, valid phylo4 objects can only take on the
order values "unknown", "preorder", or "postorder", as specified in the
built-in vector phylo4_orderings. Hence the following error:
> tr <- reorder(bird.families)
> as(tr, "phylo4d")
Error in checkTree(object) :
unknown order: allowed values are unknown,preorder,postorder
I suppose the coercion method should either ignore the phylo order
attribute if it isn't relevant for phylo4 objects, or deal with it in a
way that doesn't conflict with the phylobase usage of this attribute.
On a related note, I believe phylobase::subset always fails with ape
2.3, because the newly revised ape::drop.tip (called internally by
subset) explicitly reorders trees as cladewise, creating an order
attribute that phylobase currently regards as invalid.
FYI, I'm using ape 2.3 and the r426 build of phylobase.
More information about the Phylobase-devl