The simplest script#

Section author: Gavin Huttley

We use a canned nucleotide substitution model (the HKY85 model) on just three primate species. As there is only one unrooted tree possible, the sequence names are all that’s required to make the tree.

from cogent3 import load_aligned_seqs, make_tree
from cogent3.evolve.models import get_model

model = get_model("HKY85")
aln = load_aligned_seqs("data/primate_cdx2_promoter.fasta")
tree = make_tree(tip_names=aln.names)
lf = model.make_likelihood_function(tree)
lf.set_alignment(aln)
lf.optimise(show_progress=False)
lf

HKY85

log-likelihood = -2494.9537

number of free parameters = 4

Global params
kappa
5.9589
Edge params
edgeparentlength
humanroot0.0040
macaqueroot0.0384
chimproot0.0061
Motif params
ACGT
0.24390.25810.24280.2552