Удалите узлы ветви из филогенетического дерева
T2
= prune(T1
, Nodes
)
T2
= prune(T1
, Nodes
,
'Mode','Exclusive')
T1 | Филогенетический объект, созданный с phytree функция конструктора. |
Nodes | Узлы, чтобы удалить из дерева. |
Mode | Свойство управлять методом сокращения. Введите любой |
удаляет узлы, перечисленные в векторном 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)