1

Есть другие пакеты, в частности ape для R, которые строят дерево без корня, а затем разрешают его root explicitly specifying an outgroup.Как Биопитон определяет корень филогенетического дерева?

Напротив, в BioPython я могу напрямую создать корневое дерево без указания корня, поэтому мне интересно, как определяется корень, например, из следующего кода.

from Bio import AlignIO 
alignment = AlignIO.read('mulscle-msa-aligned-105628a58654.fasta', 'fasta') 
from Bio.Phylo.TreeConstruction import DistanceCalculator 
calculator = DistanceCalculator('ident') 
dm = calculator.get_distance(alignment) 
from Bio.Phylo.TreeConstruction import DistanceTreeConstructor 
constructor = DistanceTreeConstructor() 
tree = constructor.upgma(dm) 
from Bio import Phylo 
Phylo.write(tree, 'phyloxml-7016bed7d42.xml', 'phyloxml') 

я сделал последовательность здесь после того, как дерево было построено, но тем не менее это корневое дерево построены из этого процесса.

enter image description here

+2

Вопрос не является специфическим для биопитона. Существует несколько алгоритмов восстановления филогенетических деревьев. Вы выбрали метод «UPGMA» на расстоянии. «UPGMA» - один из простейших методов. Он предполагает постоянные молекулярные часы и является иерархическим методом кластеризации. Вы всегда будете получать корневое дерево по дизайну алгоритма. – cel

+1

добавление @cel say .... этот тип вопроса лучше в [https://www.biostars.org/](https://www.biostars.org/) или на почту [email protected] –

ответ

1

В @cel сказано, это является продуктом алгоритма UPGMA. UPGMA создает дерево, работая назад от настоящего (или всякий раз, когда происходят ваши данные). Он начинается с поиска двух наиболее похожих видов. Теоретически эти виды имеют более недавнего общего предка, чем любая другая пара видов, поэтому они группируются вместе. Сходство их общего предка с другими видами в дереве слабо оценивается путем усреднения каждого вида сходства со всеми членами группы.

Этот процесс продолжается, группируя два наиболее похожих вида (или предполагаемых общих предков) в дереве на каждом шаге, а затем пересчитывая сходства, пока осталось только две группы. У одной из этих групп может быть только один член, и в этом случае ее можно эффективно рассматривать как внешнюю группу, но у них также может быть много членов. Корень дерева является общим предком этих двух групп.

+0

Cool , не понимал, что это был специально алгоритм укоренения. Предположительно ** ape ** использует алгоритм соседей соседства и может быть сказано использовать UPGMA, и, очевидно, наоборот, с Biopython для достижения тех же результатов. – nshaas