Bio.Nexus.Trees模块

类来处理系统发育树。

提供了一组方法来读取和写入Newick格式的树描述,获取有关树的信息(分类单元集合、树之间的同余、共同祖先等)并操作树(重新根树、拆分终端节点)。

exception Bio.Nexus.Trees.TreeError

基类:Exception

树例外管理规定。

class Bio.Nexus.Trees.NodeData(taxon=None, branchlength=0.0, support=None, comment=None)

基类:object

存储与节点(例如分支或OTU)相关联的树相关数据。

__init__(taxon=None, branchlength=0.0, support=None, comment=None)

初始化类。

class Bio.Nexus.Trees.Tree(tree=None, weight=1.0, rooted=False, name='', data=NodeData, values_are_support=False, max_support=1.0)

基类:Chain

使用具有ON前置(=祖先)和多个后继(=子类)的节点链表示树。

__init__(tree=None, weight=1.0, rooted=False, name='', data=NodeData, values_are_support=False, max_support=1.0)

Ntree(自身,树)。

node(node_id)

返回node_id的实例。

node=node(self,node_id)

split(parent_id=None, n=2, branchlength=1.0)

规范:生成一个节点的n个子代(默认两个)。

[新身份证] =拆分(自身,父代id=无,n=2,分支长度=1.0):

search_taxon(taxon)

返回self.data.taxon中第一个匹配的分类单元。不限于终端节点。

node_id=search_taxon(自身,分类)

prune(taxon)

从树上修剪顶生分类单元。

ID_OF_PREVICE_NODE=PRUNE(Self,Taxon)如果分类单元来自分叉,则连接节点将折叠,其分枝长度将添加到剩余的末端节点。这可能不再是有意义的值‘

get_taxa(node_id=None)

返回一个节点向下的所有OTU的列表。

节点=get_taxa(self,node_id=None)

get_terminals()

返回所有终端节点的列表。

is_terminal(node)

如果节点是终端节点,则返回True。

is_internal(node)

如果节点是内部节点,则返回True。

is_preterminal(node)

如果节点的所有后继节点都是终端后继节点,则返回True。

count_terminals(node=None)

计算连接到节点的终端节点的数量。

collapse_genera(space_equals_underscore=True)

折叠属于同一属的所有子树。

(即它们的分类单元名称的第一个单词相同。)

sum_branchlength(root=None, node=None)

将从根(缺省为self.root)到节点的分支长度相加。

SUM=SUM_BRANCHLENGTH(SELF,ROOT=NONE,NODE=NONE)

set_subtree(node)

以嵌套集的形式返回子树。

Sets=set_subtree(自身,节点)

is_identical(tree2)

比较tree和tree2的身份。

RESULT=IS_ENTIAL(Self,tree2)

is_compatible(tree2, threshold, strict=True)

将分支与支持>阈值进行兼容性比较。

结果=IS_COMPATIBLE(自身,树2,阈值)

common_ancestor(node1, node2)

返回连接两个节点的公共祖先。

node_id=COMMON_ANISTOR(SELF,node1,node2)

distance(node1, node2)

将两个节点之间的分支长度之和相加并返回。

dist=距离(自身、节点1、节点2)

is_monophyletic(taxon_list)

如果taxon_list是单系的,则返回公共祖先的node_id,否则返回-1。

RESULT=IS_MONALLETIC(SELF,TATON_LIST)

is_bifurcating(node=None)

如果节点下游的树是严格分叉的,则返回True。

branchlength2support()

将存储在data.Branch chlength中的值移动到data.support,并将Branch length设置为0.0。

当support已存储为分支长度(例如PAUP)并因此被读入为分支长度时,这是必要的。

convert_absolute_support(nrep)

将绝对支持(clade-count)转换为REL。频率。

一些软件(例如Phylip Consenense)只计算分支出现的频率,而不是计算相对频率。

has_support(node=None)

如果任何节点都有data.support!=None,则返回True。

randomize(ntax=None, taxon_list=None, branchlength=1.0, branchlength_sd=None, bifurcate=True)

从分类标签生成具有NTax分类和/或分类的随机树。

NEW_TREE=RAMOZIZE(SELF,NTAX=NONE,TAYON_LIST=NONE,BRANCHLENGTH=1.0,BRANCHLENGTH_SD=NONE,DIBURCATE=True)树在默认情况下是分叉的。(尚不支持分割)。

display()

所有节点的快速脏列表。

to_string(support_as_branchlengths=False, branchlengths_only=False, plain=True, plain_newick=False, ladderize=None, ignore_comments=True)

返回与PAUP兼容的树线。

__str__()

to_string()的简短版本,给出普通树。

unroot()

使用有根树的数据定义无根树结构。

root_with_outgroup(outgroup=None)

使用参照组OUTGROUP定义树根。

merge_with_support(bstrees=None, constree=None, threshold=0.5, outgroup=None)

将分支支持(来自共识或引导树列表)与系统发展合并。

tree=merge_bootstrap(Phylo,bs_tree=<list_of_tree>)或tree=merge_bootstrap(Phylo,conree=具有分支支持的Consensus_tree)

Bio.Nexus.Trees.consensus(trees, threshold=0.5, outgroup=None)

从树列表中计算相对频率>=阈值的所有分支的多数规则共识树。