Учебный сайтик
Кирилла Прокаповича

Подготовка данных

Филогенетическия деревья можно строить по данным множественного выравнивания аминокислотных последовательностей цитохрома 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 и получаем деревья.

Сравнение построений филогенетических деревьев

Рис. 1. Дерево построенное с помощью программы fastme с моделью p-distance
Рис. 2. Дерево построенное с помощью программы fastme с моделью MtREV
Рис. 3. Дерево построенное с помощью программы IQTree
Рис. 4. Дерево построенное в первом задании

Укоронение происходило по 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.