NEWS
phangorn 2.11.0
OTHER CHANGES
- Vignettes have been reorganised, rewritten and vastly improved thanks to
Iris.
- small improvements to plot.codonTest, plot.networx
- rell bootstrap values are now computed by default in optim.pml / pml_bb
BUG FIXES
- fixed bug which caused warning on CRAN
- densiTree does not draw an empty plot any more
- Replace rgl.texts with texts3d, oull reqiest by Duncan Murdoch (thanks)
- changes in read.nexus.splits and read.nexus.networx to work with the
moving targets SplitsTree6/SplitsTreeCE
phangorn 2.10.0 (2022-09-18)
NEW FEATURES
- several improvements to simplify workflow and flatten learning curve.
- new function pml_bb, combining generation of starting trees, pml and
optim.pml and allowing modelTest object as input.
- tipdated phylogenies estimation (was with limitations possible before,
but not documented).
- Mkv model, edge length and rearrangements only work for ultrametric and
tiplabeled phylogenies so far.
- Added experimental version of RELL bootstrap (Minh et al. 2013 Ultrafast
Approximation for Phylogenetic Bootstrap).
- modelTest now tests several models for USER defined data.
OTHER CHANGES
- some default values of of pratchet changed
- updated, improved and reorganized several vignettes.
- function allSitePattern got an argument additional type.
phangorn 2.9.0 (2022-06-16)
BUG FIXES
- modelTest did not work if no tree was supplied
NEW FEATURES
- some tidy functions: glance.phyDat, tidy.modelTest
OTHER CHANGES
- dist.ml is a lot faster for the JC69 and F81 models if there are no
ambiguous sites present.
- added a few helper function to simplifiy some workflows (e.g. modelTest)
phangorn 2.8.0 (2021-11-09)
BUG FIXES
- Use USE_FC_LEN_T in the C prototypes of LAPACK functions to correspond to
code produced by gfortran >= 7. The mechanism was introduced in R 3.6.2
and is planned to make its use obligatory in R 4.2.0.
- bug in dna2codon fixed.
- codon models (codonTest) most likely did not work properly for models
other than the standard code.
NEW FEATURES
- free rate model
- Mkv model (so far only for rooted trees)
- better support for ultrametric and time trees
OTHER CHANGES
- optim.pml has internally been reorganized to be easier to maintain and
extend.
- pml.control got an additional argument tau which controls the minimal edge
length during optimisation.
- trees constructed with allCompat, maxCladeCred now have support values
stored in the node.labels
- switched from magrittr %>% to the native pipe |>
dropped dependency on magrittr
phangorn 2.7.1 (2021-07-13)
BUG FIXES
- several bug fixes in parsimony code
phangorn 2.7.0 (2021-05-03)
BUG FIXES
- several bug fixes, e.g. which called bootstrap.pml and pratchet to crash
OTHER CHANGES
- internal functions for handling bipartitions have been harmonized with ape
and some functions like maxCladeCred are faster
phangorn 2.6.0
NEW FEATURES
- transfer bootstrap (Lemoine et al. 2018)
- pratchet saves trees visited during search, which can be used as
(approximate) bootstrap values
- rewritten fitch algorithm to be more memory efficient, often faster
and without limitation on the number of states
- dist.hamming may handle larger datasets and can be faster
- add Laguerre quadrature as option for discrete rate classes (experimental)
- additional genetic codes for codon models.
OTHER CHANGES
- conversion between alignment formats is faster and more memory efficient,
allowing the handling of larger datasets
- changed R dependencies to 3.6.0 mainly to supply nicer palettes via
hcl.colors()
- lots of small improvements to especially for codon models
- tests are now done by tinytest, dropped dependencies on testthat, vdiffr
- all vignettes are now based on Rmarkdown
- pmlPart and pmlMix are a bit more robust
phangorn 2.5.4
NEW FEATURES
- dist.ml, dist.hamming, dist.logDet and dist.p also take DNAbin or
AAbin objects as input
BUG FIXES
- bootstrap.pml returned an error with argument optNni=T
Best practise is to always use TRUE and not T as shortcut
OTHER CHANGES
phangorn 2.5.2
NEW FEATURES
- pratchet, optim.parsimony, optim.pml all may now return trees with
multifurcations in case duplicated sequences are discovered. This may
lead to speeding up computations and improved tree topology search.
- function codonTest which adds codon models to detect positive selection
(M1a, M2a) and several options to estimate codon frequencies
(F3x4, F1x4). Can be pretty slow and still experimental.
- broom type tidy function for several objects to easier compare models
- new "equal_angle" layout for 2D-networks (now the default), gives usually
nicer layout of phylogenetic networks
- tiplabels, nodelabels, edgelabels from ape work for plot.networx if
plotted with base R
OTHER CHANGES
- several small improvements to more intuitively use pml and phyDat
objects, like subsetting phyDat objects with "[i, j]".
- several more unit tests
- two new contributors, Keren and Richel
- optim.parsimony, pratchet, pmlMix and pmlPart may return the current best
tree or object when interrupted.
- roxygen2 is used to generate NAMESPACE file
phangorn 2.4.0 (2018-02-15)
NEW FEATURES
BUG FIXES
- midpoint works now for trees with only 2 tips
- densiTree, bug report by Richel Bilderbeek
- tree rearrangement in optim.pml return tree with double edge matrix
- phyDat should work now for named vectors
OTHER CHANGES
- many more unit tests
- more consistent coding style
- flashClust and seqLogo are not suggested packages any more
phangorn 2.3.0
NEW FEATURES
- new function mast to compute the maximum agreement subtree
- identify.networx to identify splits in a network
- densiTree got more attributes
- unique.dist, to filter duplicate distances
- ancestral.pml and ancestral.pars are now may return proper phyDat objects
and in for DNA may return ambiguous states
BUG FIXES
- densiTree may if the consensus tree had different ordering of labels
OTHER CHANGES
- acctran allows multiPhylo objects as input
- rNNI has been completely rewritten and is faster
phangorn 2.2.0 (2017-04-03)
NEW FEATURES
- midpoint in now generic and works for multiPhylo objects
- as.bitsplits.splits to better interact with ape
BUG FIXES
- bug fix in RI and CI for ambiguous data
OTHER CHANGES
- added roxygen2 documentation, so R code is now much better documented,
reorganisation of some documentation
- many more unit tests
phangorn 2.1.0
NEW FEATURES
- new functions to compute the (approximate) SPR distance (sprdist, SPR.dist)
contributed by Leonardo de Oliveira Martins.
- super tree methods based on NNI and SPR distances
BUG FIXES
OTHER CHANGES
- improvements to as.networx. It often now produces networks with less edges
resulting in much nicer plots
- plot.networx does take a different layout algorithm
- as.data.frame.phyDat and as.character.phyDat return amino acids
now in upper cases
- more unit tests
- improved cbind.phyDat, faster and more flexible
- phangorn now requires ape 4.0
- phangorn now imports Rcpp, but not nnls any more
phangorn 2.0.4 (2016-06-21)
NEW FEATURES
- new weighted Robinson-Foulds (1979) distance wRF, suggested by Michelle Kendall
and normalized Robinson-Foulds suggested by Sereina Rutschmann
- codon model "YN98" can be called directly, improved documentation
- bootstrap.phyDat got an new argument jumble,
which randomizes input order of sequences
OTHER CHANGES
phangorn 2.0.3 (2016-05-01)
NEW FEATURES
- new function maxCladeCred computing the maximum clade credibility tree
from a sample of trees
- function read.nexus.networx and write.nexus.networx to import / export
phylogenetic networx to SplitsTree
- function as.AAbin.phyDat to exchange data with the new AAbin class from ape
- likelihood ratchet (Vos 2003) topology optimisation in optim.pml
- with KF.dist (Kuhner & Felsenstein) and path.dist can be used like RF.dist
BUG FIXES
- improvements to optim.pml to avoid numerical problems,
can now handle much more taxa (still experimantal)
OTHER CHANGES
- mrca.phylo can be used like mrca from ape (faster for large trees)
- individual splits can be colored in lento plots (suggested by France Thouzé)
- plot.networx now (silently) returns a networx object with some of the graphics
parameters, more plot options
- lots of small changes to make handling and identifying splits, edges in
trees and networks easier
- plotBS has a new argument frame and arguments BStrees can be empty
- new vignette IntertwiningTreesAndNetworks
phangorn 2.0.2 (2016-01-23)
OTHER CHANGES
- phangorn now suggests only the Biostrings and not depends on it
- some improvements to bab (branch and bound), may be faster
phangorn 2.0.0 (2015-12-10)
NEW FEATURES
- as.phyDat.MultipleAlignment to excange data with Biostrings
- dist.ml can now compute distances using a discrete gamma model
and the "F81" model.
- optim.pml got a new rearrangement argument and can now
use a stochastic rearrangements similar to Nguyen et al. (2015)
BUG FIXES
- plotBS may double counted edges when rooted trees were in the sample
OTHER CHANGES
- optim.pml uses more C code and should be more robust
- more unit tests
- baseFreq got additional parameter 'all' similar to base.freq in ape
- lots of little improvements in the manual and help files
- modelTest now also shows AIC weights and model="all" will test
all available models
phangorn 1.99.14 (2015-07-09)
NEW FEATURES
- phyDat2alignment to exports files to seqinr
- readDist, writeDist to import / export distance matrices
- cophenetic distance function for splits and networx
- added unit tests
BUG FIXES
- as.splits.networx did not work properly for 4 taxa
(reported by Laurélène Faye)
- RF.dist returned sometimes wrong values
(reported by Andres Dajles)
- plotBS did sometimes not work if the tree had no edge lengths
- plotBS did not work propoerly if input trees were rooted
(reported by Quynh Quach)
- plot.networx ignored cex argument in "2D" plots
- Siblings ignored include.self argument if node is a vector
OTHER CHANGES
- plotBS got an additional argument p to plot only support values
greater than p
- pml and optim.pml now uses more C-code (and is a bit faster)
- defaults in modelTest changed
- discrete.gamma is now exported in the NAMESPACE
phangorn 1.99-13 (2015-04-08)
OTHER CHANGES
- improved importing and conversion of data
- improved stability of pml and optim.pml
phangorn 1.99-12 (2015-02-14)
NEW FEATURES
- added neighborNet algorithm (Bryant and Moulton 2004)
very experimental at the moment
BUG FIXES
- plotBS was not working correctly if bootstraped trees are in
compressed form (bug report by Tobias Müller)
OTHER CHANGES
- many splits and networx methods have been improved
and a vignette was added
- phangorn now suggests only the rgl and not depends on it
to avoid problems on different platforms (suggestion by Matt Pennell)
- new package dependencies knitr for html vignettes and nnls
phangorn 1.99-10
BUG FIXES
- reorder.networx may not work as expected
- Gamma model was not working properly in simSeq.pml
phangorn 1.99-9 (2014-10-09)
BUG FIXES
- bug fixes for clang environment
- midpoint takes care of node labels
phangorn 1.99-8 (2014-10-06)
NEW FEATURES
- pmlPart got an argument rooted to handle rooted trees
- simSeq is now a generic function. This simplifies the
construcion of parametric bootstrap test
- SOWH.test (very experimental)
- as.networx and plot.networx improved considerably
(often generate networks less edges)
and planar graphs are now plotted nicely
BUG FIXES
- fixed some bugs in ancestral.pars
- amino acid model "Blosum62" was not working
OTHER CHANGES
- improvements to read.nexus.splits, write.nexus.splits to
be more consistant with SplitsTree
- splitsNetwork got an additional argument splits
- help for consensusNet, as.splits, as.networx have been reorganised
and improved
- treedist is much faster for larger trees
- several changes to keep R CMD check happy
- a development version phangorn is now available on github
https://github.com/KlausVigo/phangorn.git
phangorn 1.99-6
NEW FEATURES
- cladePar helps coloring trees
- treedist is faster for larger trees, better documentation and examples
BUG FIXES
- the plot of consensusNet shows now the proper bootstrap values
OTHER CHANGES
- phangorn does not depend only suggest rgl
(should build on OS X now)
- default rearrangement for parsimony is now "SPR"
phangorn 1.99-5 (2014-01-02)
NEW FEATURES
- RF.dist works also on "multiPhylo" objects and is quite fast
- optim.pml can now handle NNI tree arrangements for rooted trees,
still experimental but useful for dating etc.
BUG FIXES
- rNNI did return sometimes trees without tip labels
- SH.test did not work for pmlCluster objects
- df for rooted rooted/ultrametric trees are correctly computed
OTHER CHANGES
- lots of internal code C-code changed
- exports of some of the internal ML function, this should speed up in
future other packages e.g. the colescentMCMC package, which use them
considerably (interface may changes in the future)
- registered C routines
phangorn 1.99-0
NEW FEATURES
- new function dist.p to estimate pairwise polymorphism
p-distances from DNA sequences
BUG FIXES
- as.data.frame.phyDat returned only site patterns and so did
write.phyDat for nexus files
- some of the recently introduced (1.7-4) amino acid models were not known
by all functions and contained NAs
OTHER CHANGES
- changed package imports and depends structure to aviod error messages,
thanks to Brian Ripley
- a lot of the internal C-code has changed
phangorn 1.7-4 (2013-04-04)
NEW FEATURES
- densiTree plots are available now
- new species tree and super tree methods
- more amino acid models
BUG FIXES
- phangorn now depends on rgl instead of suggests rgl,
rgl wants to be loaded before igraph, otherwise a compiling error
on some platforms occured!
- fixed a bug that sometimes caused in pratched to crash
- fixed a bug when using negative indices in subset.phyDat
- the search heuristic SPR in optim.parsimony evaluates now more trees
and is more likely to find better ones
OTHER CHANGES
- underlying C-code for several functions has changed.
less memory reallocations and potentially time savings
hopefully I included not too many bugs
- optimising edge length changed from Jacobi to Gauss-Seidel method
and will hopefully be more robust in the long term!
- Descendants is much faster for option type="all"
- plotAnc gives user more control and produces nicer plots
phangorn 1.7-1 (2012-10-30)
NEW FEATURES
- pmlPart got additional argument model
(request from Santiago Claramunt)
BUG FIXES
- pmlPart should be more robust
OTHER CHANGES
- started reorganising the code
- underlying code of several parsimony functions has changed and
these are now considerably faster
- some examples are changed to allow faster checking on CRAN
phangorn 1.6-5 (2012-10-10)
NEW FEATURES
- dist.hamming handles ambigious states now as dist.ml
(request from Arne Mooers)
BUG FIXES
- phangorn links properly to ape
phangorn 1.6-3 (2012-07-01)
NEW FEATURES
- optim.parsimony has a new search heuristic (SPR)
BUG FIXES
- changed package to work with igraph >= 0.6
OTHER CHANGES
- arguments of pratchet changed
phangorn 1.6-0 (2012-04-05)
NEW FEATURES
- dist.ml has more options and is faster (ca. 5 times for nucleotides and 20 times for amino acids)
BUG FIXES
- plotBS did not work properly with ape version 3.0
OTHER CHANGES
- vignettes changed for a faster compilation of the package
- Ancestors allows a vector of nodes as input
- midpoint uses less memory and works for larger trees (10000 of tips)
- ancestral.pars gives better formated output
phangorn 1.5-1 (2011-12-13)
OTHER CHANGES
- several examples changed for a faster compilation of the package
phangorn 1.5-0 (2011-12-10)
NEW FEATURES
- codon models can be used directly
(dn/ds ratio can be computed)
- modelTest works now also for amino acids
BUG FIXES
- the code to compute RI and CI changed and should be more robust
OTHER CHANGES
- package parallel is used instead of multicore
- vignettes, examples, help improved
- ChangeLog is called NEWS
phangorn 1.4-1 (2011-06-30)
NEW FEATURES
- parsimony branch-and-bould algorithms bab (so far pretty slow and memory intensive)
- more amino acid models
- function nnls.tree to compute non-negative edge weights for
a given tree and a distance matrix
BUG FIXES
- allTrees returns now an integer edge matrix,
this could have caused some problems previously
- CI and RI now take better care of ambiguous states
- dist.ml has default value for amino acids
- as.splits.multiPhylo produces more sensible bipartitions
and so lento and consensusNet produce more useful plots
(thanks to Emmanuel Paradis)
OTHER CHANGES
- several changes to the networx classes and methods
- modelTest now also returns the function calls of the estimated models,
which can be used in downstream analyses
- vignette "Trees" has a few more examples
- dist.ml is more general (base frequencies and rate matrix can be supplied)
- pml objects are more compact, thanks to the Matrix package
- xtable is now a suggested package (needed for vignettes)
phangorn 1.4-0 (2011-03-27)
NEW FEATURES
- plot.network to plot split networks in 3D (requires rgl) and 2D
(still very experimantal)
- consensusNet computes consensus networks
- Lento plot allows to take multiPhylo objects as input
BUG FIXES
- CI and RI did not work with only one site pattern present
- pratchet returned only one, not all of the best trees found
OTHER CHANGES
- phangorn now requires the Matrix, igraph and rgl packages
- designTree returns a sparse Matrix and this can save a lot of memory
- internal code for computing bipartitions is much faster for large trees,
and so are several functions depending on it, e.g. RF.dist, treedist, Descendants
phangorn 1.3-1 (2011-02-14)
BUG FIXES
- the multicore package may failed, if executed in a GUI environment,
more error checks included
- optim.pml, in rare cases may failed to optimize edge length
(should be more robust now)
OTHER CHANGES
- some changes to keep R CMD check happy
- modelTest, pratchet, bootstrap.pml, bootstrap.phyDat
got an additional argument multicore option to switch
between serial and parallel execution
phangorn 1.3-0 (2011-01-31)
NEW FEATURES
- acctran to assign edge length to parsimony trees
OTHER CHANGES
- phangorn can now be cited
- additional and improved ancestral reconstructions methods
(ACCTRAN, MPR)
- new vignette describing ancestral sequence reconstruction
phangorn 1.2-0 (2010-11-22)
NEW FEATURES
- new function pratchet (parsimony ratchet)
- new function midpoint for rooting trees
- new function pruneTree to build concensus trees from node labels
(e.g. bootstrap values)
- multicore support for modelTest
BUG FIXES
- ancestral.pars sometimes did not show all possible states
- the call-attributes did not get proper changed in update.pml and
optim.pml
OTHER CHANGES
- there is now a general help page displayed with '?phangorn'
- dist.hamming is faster
- getClans, getSlices and getDiverstity can now
handle multifurcating trees
phangorn 1.1-2 (2010-09-21)
NEW FEATURES
- more generic methods for class splits (print, as.matrix)
- plotBS can plot now cladograms and phylograms
BUG FIXES
- read.phyDat sometimes did not work properly for amino acids
phangorn 1.1-1 (2010-09-03)
NEW FEATURES
- optim.pml allows to optimize rooted trees
OTHER CHANGES
- description of getClans improved
phangorn 1.1-0 (2010-08-28)
NEW FEATURES
- Consistency Index (CI) and and Rentention Index (RI)
- clanistic tools
- new generic function cbind.phyDat
- optim.parsimony works now also with the fitch algorithm,
faster than the sankoff version
BUG FIXES
- treedist and RF.dist now check whether trees are binary and
try to handle multifurcations (thanks to Jeremy Beaulieu for bug fixes)
OTHER CHANGES
- second vignette describing some special features
- allTrees is faster
- trace and pml.control are now more consistent
- optim.pml uses less memory and can be faster
for data with lots of characters
phangorn 1.0-2 (2010-05-16)
BUG FIXES
- pml.control did not work properly
OTHER CHANGES
- pmlCluster, pmlMix and pmlPart gained an attribute control,
which controls the outermost loop
- some more error checking for pml and parsimony classes
(thanks to Emmanuel and Liat)
phangorn 1.0-1 (2010-04-15)
NEW FEATURES
- ancestral sequence reconstruction
(parsimony and likelihood based)
- a small convenience function acgt2ry for ry-coding
- as.phylo.splits computes a tree from compatible splits
BUG FIXES
- a small error in pmlCluster was fixed
OTHER CHANGES
- upgma changed to accommodate change in as.phylo.hclust
- lento plots are looking nicer
phangorn 1.0-0 (2010-03-18)
NEW FEATURES
- implementation of many nucleotide substitution models
(additional general transition models can be defined)
- new function modelTest, comparison of different phylogenetic model
with AIC or BIC
- Lento plot
- subset functions for phyDat objects
BUG FIXES
- an error in pace is fixed
OTHER CHANGES
- parsimony (fitch and sankoff) can now handle multiPhylo objects
- splits structure (which is a list of bipartitions), used by lento
and hadamard conjugation
- phyDat objects can be more general generated using a contrast
matrix
phangorn 0.99-6 (2010-01-27)
NEW FEATURES
- pace, extracts the ancestral states of the root of a tree
using the sankoff algorithm
BUG FIXES
- fixed a bug in dist.ml (thanks to Emmanuel)
- fixed a bug introduced to SH.test in 0.99-5
OTHER CHANGES
- fixed several spelling mistakes in the documentation
phangorn 0.99-5 (2010-01-15)
NEW FEATURES
- parallel computing via multicore
(so far bootstrap.pml, bootstrap.pml profit under linux)
- compute edge weights for parsimony trees
BUG FIXES
- optim.pml had problems when
- as.character converted ?,- wrongly to NA
- fitch needed binary trees as input, otherwise pscore is
likely to be wrong (returns now a warning)
- optim.pml had a problem with identical sequences
OTHER CHANGES
- optim.parsimony returns now a tree with edge weights
- vignette is enhanced, I fixed some spelling mistakes and added
some more examples.
phangorn 0.99-4 (2009-11-27)
NEW FEATURES
- new generic function unique.phyDat
OTHER CHANGES
- internal data format phyDat changed
and data are stored more memory efficient
(optim.pml and friends use less memory and may be faster)
phangorn 0.99-3 (2009-10-30)
BUG FIXES
- RF.dist sometimes returned wrong distances
- rate parameter is now properly normalized in pml.Part
and pmlCluster
- simSeq had problems simulating a single character
NEW FEATURES
- rSPR and rNNI to simulate tree rearrangements
phangorn 0.99-2 (2009-07-21)
NEW FEATURES
- bootstrap.pml and bootstrap.phyDat: parametric
bootstrap methods
- simSeq: A new function to simulate sequence data
- read.phyDat: simplifies reading in alignments
- SH.test: Shimodaira-Hasegawa test
- RF.dist: Robinson-Foulds distance as replacement
for treedist (uses less memory and is much faster)
BUG FIXES
- dist.ml returned wrong variances.
- as.character.phyDat, as.data.frame caused an error
for alignments with only one site.
OTHER CHANGES
- added vignette describing how to perform some
standard phylogenetic analysis with phangorn.
- more functions to convert between different data formats.
- NNI tree search is now general possible for
partition models (pmlPart, pmlCluster)
phangorn 0.0-5 (2009-01-22)
BUG FIXES
- Solved a namespace problem with ape (>=2.2-3).
phangorn 0.0-4 (2008-12-22)
NEW FEATURES
- splitsNetwork fits a phylogenetic network using a L1 penalty.
(High memory consumption)
- pmlPen: A new function to estimate penalized likelihood models
for sets of edge weights in mixtures or partition models.
BUG FIXES
- dist.ml should be more forgiving for different inputs.
OTHER CHANGES
phangorn 0.0-3 (2008-10-29)
NEW FEATURES
- amino acid models
- several new maximum likelihood models:
mixture models (pmlMix), and some model for
phylogenomic data partition models (pmlPart),
and clustering of partitions / genes (pmlCluster)
(still experimental, feed back wellcome)
- design matrices for phylogenetic distance methods
- added some functions useful for simulations
(nni, allTrees)
OTHER CHANGES
- the data object phyDat changed slightly internally
- a new dataset
- read.aa to read amino acid data in phylip format
based on read.dna from the ape package
phangorn 0.0-2 (2008-07-21)
NEW FEATURES
- more generic functions (plot.pml, update.pml)
BUG FIXES
- the "Fitch" algorithm in parsimony contained a bug
OTHER CHANGES
- pml has a cleaner interface (less parameter)
- new faster parsimony analysis (more compiled C-Code)
- added NAMESPACE