Ancestral state estimation under the threshold model ms. available
My new article about ancestral character estimation under the threshold model is now available online 'Accepted' (i.e., final submitted pre-proof ms.) at the journal Evolution. In this manuscript, I...
View ArticleRandom skewers method for comparing covariance matrices
A colleague and friend emailed me the other day to ask me if I had any R code for the so-called "random skewers" matrix comparison method of Cheverud (1996). According to this method, we 'skewer' our...
View ArticleNew function to add species to a genus in a phylogeny
Recently an R-sig-phylo subscriber made the following request:"I need to add a list of 230 species in a phylogenetic tree. Is there a logical way to add the species to the root of the genera to which...
View ArticleReconstructed ancestral & tip states for a continuous character evolving by...
I'm working on a short comment (perhaps for publication, perhaps not) on ancestral state reconstruction methods when data for some tips are missing or uncertain. The reason for this is twofold: (1)...
View ArticleS3 methods for phyl.pca
This morning Joan Maspons kindly supplied code for several S3 methods that can be used with the phytools function phyl.pca to return results via print, summary, and biplot that are similar to the...
View ArticleComputing the posterior probabilities for tip nodes from ancThresh
The phytools function ancThresh, which conducts ancestral state reconstruction of a discrete character under the threshold model using Bayesian MCMC (Revell In press), also allows uncertain tip nodes...
View ArticleNew OU simulator in fastBM
I just wrote some code for my phylogeny methods class (class materials here) to simulate evolution on the phylogeny by the Ornstein-Uhlenbeck process using a constant θ and α without transforming the...
View ArticleMinor update to phyl.cca
A phytools user reported that phyl.cca breaks if either X or Y contain only one column. Even though we would not normally use CCA when one or the other of our xs or ys contains only one variable (why...
View ArticleCool use of densityMap and contMap (& in the same figure!)
I just learned of this recent article by Ryan Ellingson et al. which makes very neat use of the phytools functions densityMap and contMap for plotting a posterior density from stochastic mapping on a...
View ArticleBug fix for anc.Bayes
phytools has a function, anc.Bayes, for ancestral state estimation of continuous traits using Bayesian MCMC. In preparing a tutorial on ancestral character estimation for my phylogeny methods graduate...
View ArticleBug fix for phenogram(...,spread.labels=TRUE) for when labels don't actually...
I just discovered a small bug in phenogram (the phytools function for plotting traitgrams in various ways) which causes phenogram(...,spread.labels=TRUE) to fail when labels actually don't overlap. So,...
View ArticlePlotting the number of steps under parsimony to attach a new tip to all...
A few days ago, I received an email with the following text:"What I have been trying to do is to color the branches of a tree according to the number of steps under parsimony that are required if...
View ArticleDifference between gammaStat & ltt when the tree is slightly non-ultrametric
A phytools user reported a small, but measurable, difference in Pybus & Harvey's γ computed by gammaStat in ape and ltt in the phytools package. Since I know that ltt and gammaStat return the same...
View ArticleNew project - Rphylip: an R interface for PHYLIP
Just towards the end of this week I started working on a new project, Rphylip, which is designed to provide an R interface for the longstanding, popular phylogenetics package PHYLIP. PHYLIP does a...
View ArticleMore on Rphylip: Rdnapars and Rneighbor
I've spent a little more time working on Rphylip. Here are a few updates since my last post: I have now added the functions Rdnapars (for dnapars), Rneighbor (for neighbor). I have also cleaned up the...
View ArticleRphylip in Mac OS X
I just tried Rphylip in R on Mac OS X. It appears to work fine, although the internal function findPath will not - so the full path to the PHYLIP executables needs to be supplied by the user. However I...
View ArticleMore on Rphylip: Interfaces for threshml & treedist
I've been gradually plugging away at Rphylip (my R wrapper for PHYLIP), which now includes working interfaces for contml, contrast, dnaml, dnamlk, dnapars, neighbor, threshml, and treedist. Obviously,...
View ArticleRphylip: consense, proml, promlk, and some functions for handling protein...
Since my last post on Rphylip I've added R interfaces for a few more of PHYLIP programs: consense (Rconsense), proml (proml), and promlk (promlk). The latter two do ML phylogeny estimation (without...
View ArticleRphylip: protpars & protdist
I keep plugging away at the Rphylip project. I have now written R interfaces covering 15* of the 35* programs in the PHYLIP package (*including threshml, which is technically not yet in PHYLIP), as...
View ArticleThree different ways to calculate the among-species variance-covariance...
Here are three different ways to compute the among-species variance-covariance matrix for multiple characters on the tree. If we assume that the characters are evolving by Brownian motion, this matrix...
View Article