Skip to content

Releases: ms609/TreeTools

v1.7.0

21 Mar 09:27
832d93a
Compare
Choose a tag to compare

TreeTools 1.7.0

New methods and functions

  • rev.Splits() reverses order in which splits are listed.

  • KeepTip.Splits() is a faster alternative to SubSplit().

  • %in%.Splits() retains names when comparing small splits
    (#40).

  • sort.multiPhylo() sorts lists of trees according to their mixed base
    representation (#84).

  • Bitwise manipulation of splits with |, &, xor.

  • as.MixedBase() uniquely represents binary trees as a mixed-base vector.

  • PathLengths() describes all paths within a tree.

  • KeptVerts() and KeptPaths() identify elements in reduced trees.

  • PostorderOrder() describes a sequence of edges corresponding to a
    postorder traversal of a tree.

  • SpectrumLegend() adds gradients to plot legends.

Improvements

  • Improve handling of zero-split trees.

  • DropTip() no longer adds a root to unrooted trees, and retains edge lengths.

  • Improve speed of DropTip(), by an order of magnitude in some cases.

  • Support edge lengths in Preorder(), RootTree(), UnrootTree() and
    Postorder() (#49,
    #89).

  • Fix bug when tree is rooted on a discontinuous outgroup.

  • SortTree() handles weighted and non-binary trees
    (#25,
    #25),
    and gains option to sort by tip labels.

  • TipsInSplits(smallest = TRUE) counts tips in smaller bipartition.

  • Fix a bug with phyDat objects in ArtificialExtinction().

  • RenumberTips() allows tipOrder to contain elements not present in tree.

  • Use lighter Rcpp headers.

  • Small improvements to computational efficiency.

Deprecations

  • Remove deprecated function PostorderEdges()
    (#35).

v1.6.0

12 Jan 14:42
Compare
Choose a tag to compare

New functions

  • RoguePlot() plots the positions of rogue taxa.

Improvements

  • DropTip() gains check parameter to allow slightly faster operation where
    input is guaranteed to be valid.

  • RandomTree() gains nodes parameter allow the inclusion of polytomies.

  • Infer tips parameter if missing in StringToPhyDat().

  • Remove dependency on "phangorn" (allowing use on R < 4.1)

  • Improve parsing of information from nexus files.

  • Export DropTipPhylo() as wrapper to DropTip.phylo().

v1.5.1

06 Oct 13:03
1bd8c85
Compare
Choose a tag to compare
  • PhyDatToMatrix() optionally encodes ambiguous / inapplicable tokens as NA.

  • Update test suite for compatibility with "testthat" > 3.0.4 (@hadley, #83).

v1.5.0

13 Sep 08:05
2a7af78
Compare
Choose a tag to compare

New functions

  • ConstrainedNJ() returns an approximation to a neighbour-joining tree that respects constraints.
  • PolarizeSplits() marks a specified taxon as representing the ingroup of all splits.
  • Add KeepTip() and improve performance of DropTip().
  • ImposeConstraint() makes a tree consistent with topological constraints.
  • as.phylo.Splits() represents a Splits object as a tree.
  • Consensus() is a faster C++ implementation of ape::consensus().
  • ClusterTable() C++ functionality imported from "TreeDist".

Improved functions

  • Warn when empty cells passed to MatrixToPhyDat().
  • Warn when LabelSplits(labels) lack names.
  • SplitFrequency() drops tips from forest that aren't in reference.
  • AddTipEverywhere() supports trees with < 3 leaves.
  • Make RootTree() and PhyDatToMatrix() more robust.
  • Read[Tnt]AsPhyDat() passes additional parameters to Read[Tnt]Characters().
  • Support encoding option in ReadCharacters() function family.
  • Support CHARSTATELABELS in ReadCharacters().
  • Support for more formatting quirks in ReadNotes().
  • Better support ambiguous tokens in WriteTntCharacters().

Optimization

  • Fast matching functions from "fastmatch".
  • Improve efficiency of Preorder() and Postorder(), and lift limit on tree size.

v1.4.5

23 Jun 07:03
41f15fe
Compare
Choose a tag to compare
  • Correct calculation of minimum value in TCIContext().
  • Extract tip labels from objects in StringToPhyDat().
  • Support AddTip(tree, where = "tip name").
  • SplitFrequency() supports four-leaf trees.
  • Add RootTree.matrix() method for edge matrices.
  • Add TipLabels.phyDat() method.
  • Add NULL methods for tree reordering functions.
  • Additions and improvements to text parsing functions.

v1.4.4

23 Apr 07:51
Compare
Choose a tag to compare
  • Add NTip.phyDat() method.
  • Update MakeTreeBinary() docs and tests to reflect updated behaviour of
    ape::multi2di() in 'ape' v5.5.

v1.4.3

12 Apr 16:07
251045e
Compare
Choose a tag to compare
  • AddTip() supports edge lengths.
  • CladisticInfo() supports Splits objects.
  • as.multiPhylo() converts trees, datasets and Splits objects into
    multiPhylo objects.
  • LabelSplits(labels = NULL) labels each split with its associated node.
  • PhyDatToMatrix() supports integer-only levels.
  • SortTree() supports lists of trees.
  • Improvements to ReadTntCharacters() character block extraction
    (#50).

v1.4.2

26 Jan 19:17
Compare
Choose a tag to compare
  • Support star trees in RootTree().
  • Improve memory handling in root_on_node().
  • Documentation linkage.

v1.4.1

09 Dec 08:37
Compare
Choose a tag to compare
  • MSTEdges() supports distance matrices with > 256 entries.
  • Package 'vdiffr' used conditionally.

v1.4.0

20 Oct 07:12
79cfb19
Compare
Choose a tag to compare

New functions

  • MSTLength() reports length of minimum spanning tree.
  • AllTipLabels() returns all labels from all trees in a list.
  • PairwiseDistances() (from 'TreeDistData') computes distances between all
    pairs of trees in a list.
  • ArtificialExtinction() gains replaceAll option.
  • WriteTntCharacters(types = ...) writes different character types to TNT
    file.
  • Tree characterization S3 methods: add .default and .NULL.

Enhancements

  • MSTEdges() implemented in C++, improving runtime by orders of magnitude.
  • Improved parsing of TNT character files.