Филогенетическия деревья можно строить по данным множественного выравнивания аминокислотных последовательностей цитохрома B у животных, которых мы взяли для задания. Я с помощью списка идентификатора цитохромов B получил аминокислотные последвательности этого белка, а затем их множественное выравнивание, с помощью:
seqret @cyb.list cyb.fasta #получение последовательностей
muscle -align cyb.fasta -output cyb-alignment.fasta #выравнивание
Затем с помощью скрипта на python перевел фаста файл в phylip-relaxed (.phy). Вот он:
#!/usr/bin/python
from Bio import AlignIO
inh = open("cyb-alignment.fasta", "r")
outh = open("cyb.phy", "w")
alignment = AlignIO.parse(inh, "fasta")
AlignIO.write(alignment, outh, "phylip-relaxed")
inh.close()
outh.close()
Берем этот .phy файл и засовываем его в эти программы:
fastme -i cyb.phy -o cybtreep -pp-distance
fastme -i cyb.phy -o cybtreem -pMtREV
iqtree -s cyb.phy
Программа fastme использует алгоритм минимальной эволюции, при котором ищется дерево, у которого сумма длин всех ветвей минимальна. Модели p-distance и MtREV это способы посчитать матрицу расстояний между двумя видами, p-distance - это самый простой способ получить эту матрицу, при котором считается процент несовпадающих позиций, а при MtREV идет поправка на вероятности замен аминокислот в митохондриальных белках (каким и является цитохром B).
iqtree использует метод максимального прадоподобия. Она ищет то дерево, которое с максимальной вероятностью соответствует входным данным.
Получаем файлы treep, treem и сyb.phy.treefile, засовываем их в iTOL и получаем деревья.
Укоронение происходило по Ursus arctos. Ursus arctos обособлен от всех, хотя должен быть в одной кладе с Gulo gulo и Enhydra lutris. Gulo gulo не должен находится с Vulpes vulpes и Canis lupus familiaris. В остальном все правильно.
Укоронение происходило по Ursus arctos. Ursus arctos находится достаточно близко к Gulo gulo, но Gulo gulo не должен находиться в одной кладе с Vulpes vulpes и Canis lupus familiaris, Enhydra lutris должна быть в одной кладе с Gulo gulo, в остальном все правильно.
Укоронение происходило по Pusa hispida. Tут единственное странно, что Canis lupus familiaris и Vulpes vulpes находятся в таком положении относительно клады с Enhydra lutris и Ursus arctos, хотя они и в дереве с первого задания находятся в одной кладе, просто их можно разделить там на две отдельные клады, а тут клада с Canis lupus familiaris находится внутри клады с Ursus arctos.
В общем максимально правдоподобное дерево получилось с помощью программы IQTree.