exponenta event banner

Построение филогенетического дерева для видов Hominidae

Этот пример показывает, как конструировать филогенетические деревья из последовательностей мтДНК для таксонов Hominidae (также известных как pongidae). Эта семья охватывает горилл, шимпанзе, орангутанов и людей.

Введение

Митохондриальная D-петля является одной из самых быстро мутирующих областей последовательности в ДНК животных, и поэтому часто используется для сравнения близкородственных организмов. Происхождение современного человека является весьма спорным вопросом, который был решен с использованием последовательностей мтДНК. Ограниченная генетическая изменчивость мтДНК человека была объяснена с точки зрения недавнего общего генетического происхождения, что означает, что все мтДНК современной популяции, вероятно, произошли от одной женщины, которая жила в Африке менее 200 000 лет.

Получение данных последовательности из GenBank

®

В этом примере используются митохондриальные последовательности D-петли, выделенные для различных видов гоминид со следующими номерами GenBank Accession.

%        Species Description      GenBank Accession
data = {'German_Neanderthal'      'AF011222';
        'Russian_Neanderthal'     'AF254446';
        'European_Human'          'X90314'  ;
        'Mountain_Gorilla_Rwanda' 'AF089820';
        'Chimp_Troglodytes'       'AF176766';
        'Puti_Orangutan'          'AF451972';
        'Jari_Orangutan'          'AF451964';
        'Western_Lowland_Gorilla' 'AY079510';
        'Eastern_Lowland_Gorilla' 'AF050738';
        'Chimp_Schweinfurthii'    'AF176722';
        'Chimp_Vellerosus'        'AF315498';
        'Chimp_Verus'             'AF176731';
       };

Вы можете использовать getgenbank функция в цикле for для извлечения последовательностей из хранилища данных NCBI и их загрузки в MATLAB ®.

for ind = 1:length(data)
    primates(ind).Header   = data{ind,1};
    primates(ind).Sequence = getgenbank(data{ind,2},'sequenceonly','true');
end

Для удобства ранее загруженные последовательности включаются в MAT-файл. Следует отметить, что данные в публичных хранилищах часто обрабатываются и обновляются; поэтому результаты этого примера могут несколько отличаться при использовании актуальных последовательностей.

load('primates.mat')

Построение филогенетического дерева UPGMA с использованием методов расстояний

Вычислять попарные расстояния по формуле Джукса-Кантора и филогенетическому дереву методом расстояний UPGMA. Поскольку последовательности не выровнены заранее, seqpdist выполняет попарное выравнивание перед вычислением расстояний.

distances = seqpdist(primates,'Method','Jukes-Cantor','Alpha','DNA');
UPGMAtree = seqlinkage(distances,'UPGMA',primates)

h = plot(UPGMAtree,'orient','top');
title('UPGMA Distance Tree of Primates using Jukes-Cantor model');
ylabel('Evolutionary distance')
    Phylogenetic tree object with 12 leaves (11 branches)

Построение филогенетического дерева соединения соседей с использованием методов расстояния

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

NJtree = seqneighjoin(distances,'equivar',primates)

h = plot(NJtree,'orient','top');
title('Neighbor-Joining Distance Tree of Primates using Jukes-Cantor model');
ylabel('Evolutionary distance')
    Phylogenetic tree object with 12 leaves (11 branches)

Сравнение топологий дерева

Обратите внимание, что различные методы филогенетической реконструкции приводят к различным топологиям деревьев. Соседнее присоединяющееся дерево группирует Chimp Vellerosus в кладе с гориллами, в то время как дерево UPGMA группирует его около шимпанзе и орангутанов. getcanonical функция может использоваться для сравнения этих изоморфных деревьев.

sametree = isequal(getcanonical(UPGMAtree), getcanonical(NJtree))
sametree =

  logical

   0

Изучение филогенетического дерева UPGMA

Вы можете исследовать филогенетическое дерево, рассматривая узлы (листья и ветви) в пределах заданного патристического расстояния от входа «European Human» и уменьшая дерево до интересующих подветвей путем отсечения неприменимых узлов.

names = get(UPGMAtree,'LeafNames')
[h_all,h_leaves] = select(UPGMAtree,'reference',3,'criteria','distance','threshold',0.3);

subtree_names = names(h_leaves)
leaves_to_prune = ~h_leaves;

pruned_tree = prune(UPGMAtree,leaves_to_prune)
h = plot(pruned_tree,'orient','top');
title('Pruned UPGMA Distance Tree of Primates using Jukes-Cantor model');
ylabel('Evolutionary distance')
names =

  12x1 cell array

    {'German_Neanderthal'     }
    {'Russian_Neanderthal'    }
    {'European_Human'         }
    {'Chimp_Troglodytes'      }
    {'Chimp_Schweinfurthii'   }
    {'Chimp_Verus'            }
    {'Chimp_Vellerosus'       }
    {'Puti_Orangutan'         }
    {'Jari_Orangutan'         }
    {'Mountain_Gorilla_Rwanda'}
    {'Eastern_Lowland_Gorilla'}
    {'Western_Lowland_Gorilla'}


subtree_names =

  6x1 cell array

    {'German_Neanderthal'  }
    {'Russian_Neanderthal' }
    {'European_Human'      }
    {'Chimp_Troglodytes'   }
    {'Chimp_Schweinfurthii'}
    {'Chimp_Verus'         }

    Phylogenetic tree object with 6 leaves (5 branches)

С view Далее можно исследовать/редактировать филогенетическое дерево с помощью интерактивного инструмента. См. также phytreeviewer.

view(UPGMAtree,h_leaves)

Ссылки

[1] Овчинников, И. В., и др., «Молекулярный анализ ДНК неандертальца с северного Кавказа», Nature, 404 (6777): 490-3, 2000.

[2] Sajantila, A., et al., «Гены и языки в Европе: анализ митохондриальных линий», Genome Research, 5 (1): 42-52, 1995.

[3] Krings, M., et al., «Последовательности неандертальной ДНК и происхождение современных людей», Cell, 90 (1): 19-30, 1997.

[4] Дженсен-Шейман, М. И. и Кидд, К. К., «Вариация митохондриальной ДНК и биогеография восточных горилл», Molecular Ecology, 10 (9): 2241-7, 2001.