exponenta event banner

phytree

Создание фитообъекта

Синтаксис

Tree = phytree(B)
Tree = phytree(B, D)
Tree = phytree(B, C)
Tree = phytree(BC)
Tree = phytree(..., N)
Tree = phytree

Аргументы

B

Числовой массив размера [NUMBRANCHES X 2] в которой каждая строка представляет ветвь дерева. Он содержит два указателя на ветвь или конечные узлы, которые являются его потомками.

CВектор столбца с расстояниями для каждой ветви.
DВектор столбца с расстояниями от каждого узла до родительской ветви.
BCКомбинированная матрица с указателями на ветви или листья и расстояниями ветвей.

N

Массив ячеек с именами листьев и ветвей.

Описание

Tree = phytree(B) создает ультраметрический объект филогенетического дерева. В ультраметрическом филогенетическом древовидном объекте все листья находятся на одинаковом расстоянии от корня.

B - числовой массив размера [NUMBRANCHES X 2] в которой каждая строка представляет ветвь дерева и содержит два указателя на ветвь или конечные узлы, которые являются ее потомками.

Конечные узлы нумеруются от 1 кому NUMLEAVES и узлы ветвей нумеруются из NUMLEAVES + 1 кому NUMLEAVES + NUMBRANCHES. Обратите внимание, что, поскольку допускаются только двоичные деревья, NUMLEAVES = NUMBRANCHES + 1.

Ветви определяются в хронологическом порядке (например, B(i,:) > NUMLEAVES + i). Как следствие, первая строка может иметь только указатели на листья, а последняя строка должна представлять корневую ветвь. Для расстояния между родительским и дочерним элементами установлено значение 1, если ребенок не является листом и для удовлетворения ультраметрического состояния дерева его расстояние увеличивается.

Дано дерево с тремя листьями и двумя ветвями в качестве примера.

В окне команд MATLAB ® введите

B = [1 2 ; 3 4]

 B =

     1     2
     3     4

tree = phytree(B)

 Phylogenetic tree object with 3 leaves (2 branches)

view(tree)

Tree = phytree(B, D) создает аддитивный (ультра- или неультраметрический) объект филогенетического дерева с расстояниями ветвей, определенными D. D - числовой массив размера [NUMNODES X 1] с расстояниями каждого дочернего узла (листа или ветви) до его родительской ветви, равными NUMNODES = NUMLEAVES + NUMBRANCHES. Последнее расстояние в D - расстояние корневого узла и является бессмысленным.

b = [1 2 ; 3 4 ]

b =

     1     2
     3     4

d = [1; 2; 1.5; 1; 0]

d =

    1.0000
    2.0000
    1.5000
    1.0000
         0

view(phytree(b,d))

Tree = phytree(B, C) создает ультраметрический объект филогенетического дерева с расстояниями между ветвями и листьями, определяемыми C. C - числовой массив размера [NUMBRANCHES X 1], которая содержит расстояние от каждой ветви до листьев. У ультраметрических деревьев все листья находятся в одном месте (одинаковое расстояние до корня).

b = [1 2 ; 3 4]

b =

     1     2
     3     4

c = [1 4]'

c =

     1
     4

view(phytree(b,c))

Tree = phytree(BC) создает ультраметрический филогенетический двоичный древовидный объект с указателями ветвей в BC(:,[1 2]) и координаты ответвления в BC(:,3). То же, что и phytree(B,C).

Tree = phytree(..., N) задает имена листьев и/или ветвей. N является строковым вектором или массивом ячеек символьных векторов. Если NUMEL(N)==NUMLEAVES, затем названия присваиваются листьям хронологически. Если NUMEL(N)==NUMBRANCHESимена присваиваются узлам ветвей. Если NUMEL(N)==NUMLEAVES + NUMBRANCHES, все узлы названы. Неназначенные имена по умолчанию 'Leaf #' и/или 'Branch #' при необходимости.

Tree = phytree создает пустой объект филогенетического дерева.

Примеры

свернуть все

В этом примере показано, как создать филогенетическое дерево из файла выравнивания нескольких последовательностей.

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

Sequences = multialignread('aagag.aln');

Вычислите расстояние между каждой парой последовательностей.

distances = seqpdist(Sequences);

Постройте объект филогенетического дерева на основе рассчитанных ранее парных расстояний.

tree = seqlinkage(distances);

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

phytreeviewer(tree)

Figure Phylogenetic Tree 1 contains an axes. The axes contains 38 objects of type line.

Представлен в R2006a