сократите (phytree)

Удалите узлы ответвления из филогенетического дерева

Синтаксис

T2 = prune(T1, Nodes)
T2 = prune(T1, Nodes, 'Mode','Exclusive')

Аргументы

T1Филогенетический объект создается с функцией конструктора phytree.
Nodes

Узлы, чтобы удалить из дерева.

Mode

Свойство управлять методом сокращения. Введите или 'Inclusive' или 'Exclusive'. Значением по умолчанию является 'Inclusive'.

Описание

T2 = prune(T1, Nodes)удаляет узлы, перечисленные в векторном Nodes от древовидного T1. prune удаляет любое ответвление или вершины, перечисленные в Nodes и всех их потомках от древовидного T1, и возвращает измененный древовидный T2. Родительские узлы соединяются с 'братьями' как требуется. Nodes в дереве маркирован как [1:numLeaves] для листов и as [numLeaves+1:numLeaves+numBranches] для ответвлений. Nodes может также быть логическим массивом размера [numLeaves+numBranches x 1], указывающий на узлы, которые будут удалены.

T2 = prune(T1, Nodes, 'Mode','Exclusive') изменяет свойство Mode для сокращения к 'Exclusive' и удаляет только потомков узлов, перечисленных в векторном Nodes. Узлы, которые не сделали, чтобы предшественник стал листами в списке Nodes. В этом случае сокращение является процессом сокращения дерева путем превращения некоторых узлов ответвления в вершины и удаления вершин при исходном ответвлении.

Примеры

Загрузите филогенетическое дерево, созданное из семейства белков

tr = phytreeread('pf00002.tree');
view(tr)    

Удалите все белки 'мыши'

ind = getbyname(tr,'mouse');
tr = prune(tr,ind);
view(tr)

Удалите потенциальные выбросы в дереве

[sel,sel_leaves] = select(tr,'criteria','distance',...
                             'threshold',.3,...
                             'reference','leaves',...
                             'exclude','leaves',...
                             'propagate','toleaves');
tr = prune(tr,~sel_leaves)
view(tr)

Смотрите также

| | |

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