Bio.Phylo.PhyloXML 模块

对应于 phyloXML 元素的类。

另请参见

官方规范

http://phyloxml.org/

期刊文章

Han 和 Zmasek (2009), https://doi.org/10.1186/1471-2105-10-356

exception Bio.Phylo.PhyloXML.PhyloXMLWarning

基类:BiopythonWarning

针对不符合 phyloXML 规范的警告。

class Bio.Phylo.PhyloXML.PhyloElement

基类:TreeElement

所有 PhyloXML 对象的基类。

class Bio.Phylo.PhyloXML.Phyloxml(attributes, phylogenies=None, other=None)

基类:PhyloElement

PhyloXML 文档的根节点。

包含任意数量的 Phylogeny 元素,后面可能紧随来自其他命名空间的元素。

参数:
attributesdict

(XML 命名空间定义)

phylogenieslist

系统发育树

otherlist

任意非 phyloXML 元素(如果有)

__init__(attributes, phylogenies=None, other=None)

初始化 PhyloXML 对象的参数。

__getitem__(index)

按索引或名称获取系统发育。

__iter__()

遍历此对象中的系统发育树。

__len__()

返回此对象中系统发育树的数量。

__str__()

返回对象中系统发育的名称。

class Bio.Phylo.PhyloXML.Other(tag, namespace=None, attributes=None, value=None, children=None)

基类:PhyloElement

用于树中非 phyloXML 元素的容器。

通常,Other 对象将具有“value”或一个非空的“children”列表,但不会同时具有两者。虽然这里没有强制执行此规则。

参数:
tagstring

XML 节点的本地标签

namespacestring

节点的 XML 命名空间 - 不应是默认的 phyloXML 命名空间。

attributes字符串字典

XML 节点上的属性

valuestring

直接包含在此 XML 节点中的文本

childrenlist

子节点(如果有)(也是 Other 实例)

__init__(tag, namespace=None, attributes=None, value=None, children=None)

初始化非 phyloXML 元素的值。

__iter__()

遍历此对象的子节点(如果有)。

class Bio.Phylo.PhyloXML.Phylogeny(root=None, rooted=True, rerootable=None, branch_length_unit=None, type=None, name=None, id=None, description=None, date=None, confidences=None, clade_relations=None, sequence_relations=None, properties=None, other=None)

基类:PhyloElement, Tree

系统发育树。

参数:
rootClade

此树的根节点/分支

rootedbool

如果此树已扎根,则为 True

rerootablebool

如果此树可重新扎根,则为 True

branch_length_unitstring

分支上分支长度值的单位

namestring

此树的标识符,不需要是唯一的

idId

此树的唯一标识符

descriptionstring

纯文本描述

dateDate

此树根节点的日期

confidenceslist

此树的 Confidence 对象

clade_relationslist

CladeRelation 对象

sequence_relationslist

SequenceRelation 对象

propertieslist

Property 对象

otherlist

非 phyloXML 元素(类型 Other

__init__(root=None, rooted=True, rerootable=None, branch_length_unit=None, type=None, name=None, id=None, description=None, date=None, confidences=None, clade_relations=None, sequence_relations=None, properties=None, other=None)

初始化系统发育树对象的数值。

classmethod from_tree(tree, **kwargs)

根据树(来自 Newick/Nexus 或 BaseTree)创建新的 Phylogeny。

关键字参数是通常的 Phylogeny 构造函数参数。

classmethod from_clade(clade, **kwargs)

根据 Newick 或 BaseTree Clade 对象创建新的 Phylogeny。

关键字参数是通常的 PhyloXML.Clade 构造函数参数。

as_phyloxml()

返回这棵树,一个与 PhyloXML 兼容的 Phylogeny 对象。

覆盖 BaseTree 方法。

to_phyloxml_container(**kwargs)

创建一个新的 Phyloxml 对象,其中只包含此系统发育树。

to_alignment()

根据此树中对齐的序列构建 MultipleSeqAlignment。

property alignment

根据此树中对齐的序列构建 Alignment 对象。

property confidence

如果只有一个值,则等效于 self.confidences[0](PRIVATE)。

另请参见:Clade.confidenceClade.taxonomy

class Bio.Phylo.PhyloXML.Clade(branch_length=None, id_source=None, name=None, width=None, color=None, node_id=None, events=None, binary_characters=None, date=None, confidences=None, taxonomies=None, sequences=None, distributions=None, references=None, properties=None, clades=None, other=None)

Bases: PhyloElement, Clade

描述当前系统发育树的一个分支。

递归使用,描述系统发育树的拓扑结构。

两者 colorwidth 元素应被客户端代码解释为应用于整个分支,包括所有后代,除非在子分支中被覆盖。此模块不会自动将这些属性分配给子分支以实现此级联,也不应该这样做。

参数:
branch_length

此分支的父分支长度

id_source

将其他元素链接到分支(在 xml 级别)

namestring

此分支的简短标签

confidencesConfidence 对象列表

用于指示分支/父分支的支持。

width浮点数

此分支的宽度(包括来自父分支的分支)

colorBranchColor

用于此分支图形显示的颜色

node_id

此分支的根节点的唯一标识符

taxonomies列表

Taxonomy 对象

sequences列表

Sequence 对象

eventsEvents

描述此分支的根节点/父分支上的事件,例如基因复制。

binary_charactersBinaryCharacters

二进制字符

distributionsDistribution 对象列表

此分支的分布

dateDate

此分支的根节点的日期

references列表

Reference 对象

propertieslist

Property 对象

cladesClade 对象列表

子分支

otherOther 对象列表

非 PhyloXML 对象

__init__(branch_length=None, id_source=None, name=None, width=None, color=None, node_id=None, events=None, binary_characters=None, date=None, confidences=None, taxonomies=None, sequences=None, distributions=None, references=None, properties=None, clades=None, other=None)

初始化 Clade 对象的值。

classmethod from_clade(clade, **kwargs)

根据 Newick 或 BaseTree Clade 对象创建一个新的 PhyloXML Clade。

关键字参数是通常的 PhyloXML Clade 构造函数参数。

to_phylogeny(**kwargs)

创建一个仅包含此分支的新的系统发育树。

property confidence

返回置信度值(私有)。

property taxonomy

获取分支的分类列表(私有)。

class Bio.Phylo.PhyloXML.BranchColor(*args, **kwargs)

Bases: PhyloElement, BranchColor

管理树分支的颜色。

__init__(*args, **kwargs)

初始化 BranchColor 对象的参数。

class Bio.Phylo.PhyloXML.Accession(value, source)

基类:PhyloElement

捕获序列标识符中的本地部分。

示例:在 UniProtKB:P17304 中,Accession 实例属性 value 为 ‘P17304’,而 source 属性为 ‘UniProtKB’。

__init__(value, source)

初始化 Accession 对象的值。

__str__()

显示类名和一个标识属性。

class Bio.Phylo.PhyloXML.Annotation(ref=None, source=None, evidence=None, type=None, desc=None, confidence=None, uri=None, properties=None)

基类:PhyloElement

分子序列的注释。

建议使用可选的 ‘ref’ 属性进行注释。

参数:
refstring

参考字符串,例如 ‘GO:0008270’,‘KEGG:Tetrachloroethene degradation’,‘EC:1.1.1.1’

sourcestring

此注释的纯文本来源

evidencestr

以自由文本形式描述证据(例如 ‘experimental’)

descstring

自由文本描述

confidenceConfidence

说明支持的类型和值(类型 Confidence)

propertieslist

来自外部资源的类型化和引用注释

uriUri

链接

re_ref = re.compile('[a-zA-Z0-9_]+:[a-zA-Z0-9_\\.\\-\\s]+')
__init__(ref=None, source=None, evidence=None, type=None, desc=None, confidence=None, uri=None, properties=None)

初始化 Annotation 对象的值。

class Bio.Phylo.PhyloXML.BinaryCharacters(type=None, gained_count=None, lost_count=None, present_count=None, absent_count=None, gained=None, lost=None, present=None, absent=None)

基类:PhyloElement

分支根部的二元特征。

分支根部存在的、获得的和丢失的二元特征的名称和/或计数。

__init__(type=None, gained_count=None, lost_count=None, present_count=None, absent_count=None, gained=None, lost=None, present=None, absent=None)

初始化 BinaryCharacters 对象的值。

class Bio.Phylo.PhyloXML.CladeRelation(type, id_ref_0, id_ref_1, distance=None, confidence=None)

基类:PhyloElement

表示两个分支之间的类型化关系。

例如,这可用于描述分支的多个父节点。

__init__(type, id_ref_0, id_ref_1, distance=None, confidence=None)

初始化 CladeRelation 对象的值。

class Bio.Phylo.PhyloXML.Confidence(value, type='unknown')

Bases: float, PhyloElement

通用的置信度元素。

例如,这可用于表示分支的自展支持值(在这种情况下,type 属性为 ‘bootstrap’)。

参数:
valuefloat

置信度值

typestring

置信度类型的标签,例如“bootstrap”。

static __new__(cls, value, type='unknown')

创建并返回一个具有指定值和类型的 Confidence 对象。

property value

返回 Confidence 对象的浮点值。

class Bio.Phylo.PhyloXML.Date(value=None, unit=None, desc=None, minimum=None, maximum=None)

基类:PhyloElement

与分支/节点关联的日期。

它的值可以使用“value”元素以数字形式表示,也可以使用“desc”元素以自由文本形式表示(例如“Silurian”)。 如果使用数值,建议使用“unit”属性。

参数:
unit字符串

数值类型(例如“mya”代表“百万年前”)

valuefloat

日期值

descstring

日期的纯文本描述

minimum浮点数

日期值的较低边界

maximum浮点数

日期值的上限

__init__(value=None, unit=None, desc=None, minimum=None, maximum=None)

初始化 Date 对象的值。

__str__()

显示类名和人类可读的日期。

class Bio.Phylo.PhyloXML.Distribution(desc=None, points=None, polygons=None)

基类:PhyloElement

分支(物种、序列)中项目的地理分布。

适用于系统地理应用。

参数:
descstring

位置的自由文本描述

points列表,包含 Point 对象

坐标(类似于 Google KML 格式中的“Point”元素)

polygons列表,包含 Polygon 对象

定义地理区域的坐标集

__init__(desc=None, points=None, polygons=None)

初始化 Distribution 对象的值。

class Bio.Phylo.PhyloXML.DomainArchitecture(length=None, domains=None)

基类:PhyloElement

蛋白质的结构域结构。

参数:
length整数

蛋白质序列的总长度

domainsProteinDomain 对象的列表

此蛋白质中的结构域

__init__(length=None, domains=None)

初始化 DomainArchitecture 对象的值。

class Bio.Phylo.PhyloXML.Events(type=None, duplications=None, speciations=None, losses=None, confidence=None)

基类:PhyloElement

分支根节点上的事件(例如一次基因复制)。

所有属性默认设置为 None,但此对象也可以被视为字典,在这种情况下,None 值将被视为缺失的键,删除键会将该属性的值重置回 None。

ok_type = {'fusion', 'mixed', 'other', 'speciation_or_duplication', 'transfer', 'unassigned'}
__init__(type=None, duplications=None, speciations=None, losses=None, confidence=None)

初始化 Events 对象的值。

items()

返回 Event 的项目。

keys()

返回 Event 的键。

values()

返回 Events 字典中键值对的值。

__len__()

返回 Events 的数量。

__getitem__(key)

获取具有给定键的 Event 的值。

__setitem__(key, val)

将项目添加到 Event 字典中。

__delitem__(key)

删除具有给定键的 Event。

__iter__()

迭代 Events 字典中存在的键。

__contains__(key)

如果 Events 字典包含键,则返回 True。

class Bio.Phylo.PhyloXML.Id(value, provider=None)

基类:PhyloElement

通用标识符元素。

允许指定标识符的提供者(或授权机构),例如 NCBI,以及值本身。

__init__(value, provider=None)

初始化标识符对象的值。

__str__()

将标识符以字符串形式返回。

class Bio.Phylo.PhyloXML.MolSeq(value, is_aligned=None)

基类:PhyloElement

存储分子序列。

参数:
valuestring

序列本身

is_alignedbool

如果此序列与其他序列对齐(通常意味着所有对齐的序列长度相同,并且可能存在间隙)则为 True

re_value = re.compile('[a-zA-Z\\.\\-\\?\\*_]+')
__init__(value, is_aligned=None)

初始化 MolSeq 对象的参数。

__str__()

返回分子序列对象的 value。

class Bio.Phylo.PhyloXML.Point(geodetic_datum, lat, long, alt=None, alt_unit=None)

基类:PhyloElement

点的地理坐标,带可选海拔。

由元素 ‘Distribution’ 使用。

参数:
geodetic_datumstring, required

大地基准面(也称为“地图基准面”)。例如,谷歌 KML 使用 “WGS84”。

latnumeric

纬度

longnumeric

经度

altnumeric

海拔

alt_unitstring

海拔单位(例如“meter”)

__init__(geodetic_datum, lat, long, alt=None, alt_unit=None)

初始化 Point 对象的值。

class Bio.Phylo.PhyloXML.Polygon(points=None)

基类:PhyloElement

由 ‘Points’ 列表定义的多边形(由元素 ‘Distribution’ 使用)。

参数:

points – 代表顶点的 3 个或更多个点的列表。

__init__(points=None)

初始化 Polygon 对象的值。

__str__()

将点列表作为字符串返回。

class Bio.Phylo.PhyloXML.Property(value, ref, applies_to, datatype, unit=None, id_ref=None)

基类:PhyloElement

来自外部资源的类型化和引用属性。

可以附加到 PhylogenyCladeAnnotation 对象。

参数:
valuestring

属性的值

refstring

对外部资源的引用,例如“NOAA:depth”

applies_tostring

指示属性适用的项目(例如,‘node’ 用于分支的父节点,‘parent_branch’ 用于分支的父分支,或者只是 ‘clade’)。

datatypestring

属性的类型;限于 xsd 数据类型(例如 ‘xsd:string’、‘xsd:boolean’、‘xsd:integer’、‘xsd:decimal’、‘xsd:float’、‘xsd:double’、‘xsd:date’、‘xsd:anyURI’)。

unitstring (optional)

属性的单位,例如 “METRIC:m”

id_refId (optional)

允许将属性专门附加到一个元素(在 xml 级别)

re_ref = re.compile('[a-zA-Z0-9_]+:[a-zA-Z0-9_\\.\\-\\s]+')
ok_applies_to = {'annotation', 'clade', 'node', 'other', 'parent_branch', 'phylogeny'}
ok_datatype = {'xsd:anyURI', 'xsd:base64Binary', 'xsd:boolean', 'xsd:byte', 'xsd:date', 'xsd:dateTime', 'xsd:decimal', 'xsd:double', 'xsd:duration', 'xsd:float', 'xsd:gDay', 'xsd:gMonth', 'xsd:gMonthDay', 'xsd:gYear', 'xsd:gYearMonth', 'xsd:hexBinary', 'xsd:int', 'xsd:integer', 'xsd:long', 'xsd:negativeInteger', 'xsd:nonNegativeInteger', 'xsd:nonPositiveInteger', 'xsd:normalizedString', 'xsd:positiveInteger', 'xsd:short', 'xsd:string', 'xsd:time', 'xsd:token', 'xsd:unsignedByte', 'xsd:unsignedInt', 'xsd:unsignedLong', 'xsd:unsignedShort'}
__init__(value, ref, applies_to, datatype, unit=None, id_ref=None)

初始化 Property 对象的值。

class Bio.Phylo.PhyloXML.ProteinDomain(value, start, end, confidence=None, id=None)

基类:PhyloElement

表示域体系结构中的单个域。

位置使用基于 0 的索引,与大多数 Python 对象(包括 SeqFeature)一样,而不是通常从 1 开始的生物学约定。这意味着 start 和 end 属性可以直接用作 Seq 对象上的切片索引。

参数:
startnon-negative integer

域在序列上的开始位置,使用基于 0 的索引

endnon-negative integer

域在序列上的结束位置

confidencefloat

可用于存储例如 E 值

idstring

唯一标识符/名称

__init__(value, start, end, confidence=None, id=None)

初始化 ProteinDomain 对象的值。

classmethod from_seqfeature(feat)

从 SeqFeature 创建 ProteinDomain 对象。

to_seqfeature()

从 ProteinDomain 对象创建 SeqFeature。

class Bio.Phylo.PhyloXML.Reference(doi=None, desc=None)

基类:PhyloElement

分支的文献参考。

注意:只要可能,请使用 doi 属性而不是自由文本 desc 元素。

re_doi = re.compile('[a-zA-Z0-9_\\.]+/[a-zA-Z0-9_\\.]+')
__init__(doi=None, desc=None)

初始化 Reference 类对象的元素。

class Bio.Phylo.PhyloXML.Sequence(type=None, id_ref=None, id_source=None, symbol=None, accession=None, name=None, location=None, mol_seq=None, uri=None, domain_architecture=None, annotations=None, other=None)

基类:PhyloElement

与节点关联的分子序列(蛋白质、DNA、RNA)。

id_ref 的预期用途之一是将序列链接到分类法(通过分类法的 id_source),以防每个节点有多个序列和分类法。

参数:
type{‘dna’, ‘rna’, ‘protein’}

此序列表示的分子类型

id_ref字符串

对另一个资源的引用

id_source字符串

引用的来源

symbol字符串

序列的简短符号,例如“ACTM”(最多 10 个字符)

accessionAccession

此序列的登录号。

namestring

序列的全称,例如“肌肉肌动蛋白”

location

序列在基因组/染色体上的位置。

mol_seqMolSeq

分子序列本身

uriUri

链接

annotations注释对象列表

此序列上的注释

domain_architectureDomainArchitecture

此序列上的蛋白质结构域

otherOther 对象列表

非 PhyloXML 元素

types = {'dna', 'protein', 'rna'}
re_symbol = re.compile('\\S{1,10}')
__init__(type=None, id_ref=None, id_source=None, symbol=None, accession=None, name=None, location=None, mol_seq=None, uri=None, domain_architecture=None, annotations=None, other=None)

初始化 Sequence 对象的值。

classmethod from_seqrecord(record, is_aligned=None)

从 SeqRecord 对象创建一个新的 PhyloXML Sequence。

to_seqrecord()

从此 Sequence 实例创建一个 SeqRecord 对象。

seqrecord.annotations 字典按如下方式打包

{ # Sequence attributes with no SeqRecord equivalent:
  'id_ref': self.id_ref,
  'id_source': self.id_source,
  'location': self.location,
  'uri': { 'value': self.uri.value,
                  'desc': self.uri.desc,
                  'type': self.uri.type },
  # Sequence.annotations attribute (list of Annotations)
  'annotations': [{'ref': ann.ref,
                   'source': ann.source,
                   'evidence': ann.evidence,
                   'type': ann.type,
                   'confidence': [ann.confidence.value,
                                  ann.confidence.type],
                   'properties': [{'value': prop.value,
                                    'ref': prop.ref,
                                    'applies_to': prop.applies_to,
                                    'datatype': prop.datatype,
                                    'unit': prop.unit,
                                    'id_ref': prop.id_ref}
                                   for prop in ann.properties],
                  } for ann in self.annotations],
}
class Bio.Phylo.PhyloXML.SequenceRelation(type, id_ref_0, id_ref_1, distance=None, confidence=None)

基类:PhyloElement

表达两个序列之间类型的关系。

例如,这可以用来描述直系同源性(在这种情况下,属性“type”为“orthology”)。

参数:
id_ref_0Id

第一个序列引用标识符

id_ref_1Id

第二个序列引用标识符

distance浮点数

两个序列之间的距离

type受限字符串

描述关系的类型

confidenceConfidence

此关系的置信度值

ok_type = {'one_to_one_orthology', 'orthology', 'other', 'paralogy', 'super_orthology', 'ultra_paralogy', 'unknown', 'xenology'}
__init__(type, id_ref_0, id_ref_1, distance=None, confidence=None)

初始化类。

class Bio.Phylo.PhyloXML.Taxonomy(id_source=None, id=None, code=None, scientific_name=None, authority=None, rank=None, uri=None, common_names=None, synonyms=None, other=None)

基类:PhyloElement

描述一个进化支的分类信息。

参数:
id_sourceId

将其他元素链接到分类法(在 XML 级别上)

idId

分类单元的唯一标识符,例如 Id('6500', provider='ncbi_taxonomy') 代表加州海兔

code受限字符串

存储 UniProt/Swiss-Prot 风格的生物体代码,例如加州海兔‘Aplysia californica’ 的代码为‘APLCA’

scientific_name字符串

该生物体的标准学名,例如加州海兔的学名为“Aplysia californica”

authority字符串

保留与“scientific_name”关联的权威机构,例如“J. G. Cooper, 1863”

common_names字符串列表

该生物体的俗名

synonyms字符串列表

该分类单元的同义词?

rank受限字符串

分类等级

uriUri

链接

otherOther 对象列表

非 PhyloXML 元素

re_code = re.compile('[a-zA-Z0-9_]{2,10}')
ok_rank = {'branch', 'class', 'cohort', 'cultivar', 'division', 'domain', 'family', 'form', 'genus', 'infraclass', 'infracohort', 'infradivision', 'infrakingdom', 'infralegion', 'infraphylum', 'infratribe', 'kingdom', 'legion', 'microphylum', 'order', 'other', 'phylum', 'species', 'subclass', 'subcohort', 'subdivision', 'subfamily', 'subform', 'subgenus', 'subkingdom', 'sublegion', 'suborder', 'subphylum', 'subspecies', 'subtribe', 'subvariety', 'superclass', 'supercohort', 'superdivision', 'superfamily', 'superlegion', 'superorder', 'superphylum', 'superspecies', 'supertribe', 'tribe', 'unknown', 'variety'}
__init__(id_source=None, id=None, code=None, scientific_name=None, authority=None, rank=None, uri=None, common_names=None, synonyms=None, other=None)

初始化类。

__str__()

显示类名和一个标识属性。

class Bio.Phylo.PhyloXML.Uri(value, desc=None, type=None)

基类:PhyloElement

统一资源标识符。

通常,这应该是一个 URL(例如,链接到网站上的图像,在这种情况下,type 属性可能是 'image',而 desc 可能是 '加州海兔的图像')。

__init__(value, desc=None, type=None)

初始化类。

__str__()

返回 Uri 的字符串表示。