Releases: ms609/TreeTools
Releases · ms609/TreeTools
v2.0.0
New functionality
Cherries()counts the cherries in a binary tree.- New method
as.Splits.integer(). - Add methods for
NULLobjects.
Fixes and enhancements
- Fix
RoguePlot(sort = TRUE)(Rogue#33). - Remove R.cache dependency:
UnrootedKeys()now uses a native cache implementation.
Backward incompatible changes
- Require R 3.6.
- Remove deprecated functions
AllDescendantEdges(),.EnforceOutgroup(),ForestSplits(),in.Splits(),PhylogeneticInfo(),SpectrumLegend(),SplitNumber(),TreeSplits(). - Remove deprecated C++ macro
TREETOOLS_SPLITLIST_INIT.
v1.16.1
v1.16.0
New functionality
SplitConsistent()calculates split (dis)agreement.LongBranch()identifies long-branched taxa.Treeness()computes the treeness (=stemminess) of a tree, a proxy for its
phylogenetic signal.- Add
KeepTip()methods to correspond toDropTip(). Preorder()gainstopologyOnlyargument.
Enhancements
MakeTreeBinary()explicitly removes edge lengths.- Optimize
ClusterTableclass. - Optimize
NSplits(). - Remove exported C++ cache objects to prefer calculation with intrinsics.
- Other performance improvements.
Fixes
- Fix
as.ClusterTable()when leaf order varies. - Fix regressions in
as.ClusterTable()that caused downstream errors. - Fix regressions in
PhyToString(). - Fix handling of multiple ambiguities in
Reweight().
v1.15.0
Reweight()sets the weight of characters in a phylogenetic dataset.MatchStrings()checks for mismatched tip labels, suggesting corrections.RootTree()gainsfallbackargument to handle outgroups that do not root a tree.- Fix
MakeTreeBinary()labelling trees as in preorder. - Fix
as.Splits.matrix(tipLabels != NULL). - Modernize aspects of C++ code.
v1.14.0
v1.13.1
v1.13.0
v1.12.0
New methods and functions
TopologyOnly()removes metadata from phylo objects.J1Index()computes the robust, universal tree balance measure of
Lemant et al. 2022 doi:10.1093/sysbio/syac027, incorporating code by Rob Noble.
Enhancements
- Consistent sequence of list entries in phylo objects.
RandomTree()returns trees for < 3 leaves.root_on_node()handles trees with < 2 leaves.- Support larger trees in
TotalCopheneticIndex(), fixing #158.
v1.11.1
v1.11.0
New methods and functions
YuleTree()generates a random tree by the Yule process.DescendantTips()complementsDescendantEdges(), rewritten in C++, fixing a bug when edges were not in preorder.NodeNumbers()returns the indices of nodes within a tree.
Enhancements
RandomTree(root = TRUE)roots the tree on a random edge.RoguePlot()$legendLabelsreturns suggested labels for legend.- Support node labels in
AddTip(),CollapseNode(),DropTip(),MakeTreeBinary(),Renumber(),Reorder(),SortTree(),Subtree()(#149). AddTip(edgeLength = NULL)defaults tolengthBelow. This will become the default in a future release.- An entry point to the C++ function
root_on_node()is now exported (intended for expert use only). - Fix handling of weighted trees by
root_on_node(). - Use
KeepTip()internally soSplitFrequency()supportsSplitsobjects as documented.