Make a neighbor joining treeΒΆ
Section author: Gavin Huttley
An example of how to calculate the pairwise distances for a set of sequences.
>>> from cogent import LoadSeqs
>>> from cogent.phylo import distance, nj
Import a substitution model (or create your own)
>>> from cogent.evolve.models import HKY85
Load the alignment.
>>> al = LoadSeqs("data/long_testseqs.fasta")
Create a pairwise distances object calculator for the alignment, providing a substitution model instance.
>>> d = distance.EstimateDistances(al, submodel= HKY85())
>>> d.run()
Now use this matrix to build a neighbour joining tree.
>>> mytree = nj.nj(d.getPairwiseDistances())
We can visualise this tree by print mytree.asciiArt()
, which generates the equivalent of:
/-Human
/edge.0--|
| \-HowlerMon
|
-root----| /-NineBande
|-edge.1--|
| \-DogFaced
|
\-Mouse
We can save this tree to file.
>>> mytree.writeToFile('test_nj.tree')