Bio.Phylo.PhyloXML 模組

對應於 phyloXML 元素的類別。

另請參閱

官方規格

http://phyloxml.org/

期刊文章

Han and 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)

基底:PhyloElementTree

親緣關係樹。

參數:
rootClade

此樹的根節點/分支

rootedbool

如果此樹有根則為 True

可重新定根布林值

如果此樹可重新定根則為 True

分支長度單位字串

演化支上 branch_length 值的單位

名稱字串

此樹的識別符,不要求必須唯一

IDID

此樹的唯一識別符

描述字串

純文字描述

日期日期

此樹根節點的日期

信賴度列表

此樹的信賴度物件

演化支關係列表

演化支關係物件

序列關係列表

序列關係物件

屬性列表

屬性物件

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)

使用 Tree(來自 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

如果只有 1 個值,則等同於 self.confidences[0](私有)。

另請參閱: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)

基底:PhyloElement, Clade

描述目前系統發生樹的一個分支。

遞迴使用,描述系統發生樹的拓樸結構。

colorwidth 元素應由用戶端程式碼解釋為適用於整個演化支(包括所有後代),除非在子演化支中覆寫。此模組不會自動將這些屬性分配給子演化支以實現這種串聯 – 您也不應該這樣做。

參數:
分支長度

此演化支的父分支長度

ID 來源

將其他元素連結到演化支(在 XML 層級上)

名稱字串

此演化支的簡短標籤

信賴度信賴度物件列表

用於表示對演化支/父分支的支持。

寬度浮點數

此演化支的分支寬度(包括來自父系的分支)

顏色分支顏色

用於此演化支圖形顯示的顏色

節點 ID

此演化支根節點的唯一識別符

分類學列表

分類學物件

序列列表

序列物件

事件事件

描述此演化支根節點/父分支的基因重複等事件

二元字元二元字元

二元字元

分布分布物件列表

此演化支的分布

日期日期

此演化支根節點的日期

參考文獻列表

參考文獻物件

屬性列表

屬性物件

演化支演化支物件列表

子演化支

其他其他物件列表

非 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

傳回信賴度值 (PRIVATE)。

property taxonomy

取得分支的分類列表 (PRIVATE)。

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

繼承自: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' 屬性進行註解。

參數:
ref字串

參考字串,例如 'GO:0008270'、'KEGG:四氯乙烯降解'、'EC:1.1.1.1'

source字串

此註解的純文字來源

evidence字串

以自由文字描述證據(例如 '實驗性')

desc字串

自由文字描述

confidence信賴度

說明支援的類型和值(信賴度類型)

屬性列表

來自外部資源的類型化和參考註解

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')

基底類別: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' 元素以自由文本表示(例如,'志留紀')。如果使用數值,建議使用 'unit' 屬性。

參數:
unitstring

數值的類型(例如,'mya' 表示 '百萬年前')

valuefloat

valuefloat

desc字串

日期的值

descstring

日期的純文本描述

minimumfloat

日期值的下限

maximumfloat

日期值的上限

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

初始化 Date 物件的值。

__str__()

基底:PhyloElement

顯示類別名稱和人類可讀的日期。

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

參數:
desc字串

演化支(物種、序列)項目的地理分佈。

適用於系統地理學應用。

descstring

位置的自由文本描述

pointsPoint 物件的列表

坐標(類似於 Google KML 格式中的 'Point' 元素)

polygonsPolygon 物件的列表

定義地理區域的坐標集

基底:PhyloElement

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

參數:
初始化 Distribution 物件的值。

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

蛋白質的結構域結構。

lengthint

__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)

如果 Event 字典包含鍵,則回傳 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_aligned布林值

如果此序列與其他序列對齊則為 True(通常表示所有對齊的序列長度相同,且可能存在間隙)

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

初始化 MolSeq 物件的參數。

__str__()

回傳分子序列物件的值。

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

基底:PhyloElement

具有可選海拔高度的點的地理坐標。

由元素 ‘Distribution’ 使用。

參數:
geodetic_datum字串,必填

大地基準(也稱為「地圖基準」)。例如,Google 的 KML 使用「WGS84」。

lat數值

緯度

long數值

經度

alt數值

海拔高度

alt_unit字串

海拔高度的單位(例如,「米」)

__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

屬性的值

ref字串

對外部資源的參考,例如「NOAA:depth」

applies_to字串

表示屬性所套用的項目(例如,對於演化樹節點的父節點,使用 'node';對於演化樹分支的父分支,使用 'parent_branch';或者直接使用 'clade')。

資料類型字串

屬性的類型;限於 xsd 資料類型(例如,'xsd:string'、'xsd:boolean'、'xsd:integer'、'xsd:decimal'、'xsd:float'、'xsd:double'、'xsd:date'、'xsd:anyURI')。

單位字串(選填)

屬性的單位,例如 “METRIC:m”

id_refId(選填)

允許將屬性特別附加到一個元素(在 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 物件上的切片索引。

參數:
start非負整數

域在序列上的起始位置,使用以 0 為基礎的索引

end非負整數

域在序列上的結束位置

confidence浮點數

可用於儲存例如 E 值

id字串

唯一識別符/名稱

__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

此序列的登錄碼。

名稱字串

序列的完整名稱,例如 'muscle Actin'

location

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

mol_seqMolSeq

分子序列本身

uriUri

連結

annotationsAnnotation 物件的清單

此序列上的註解

domain_architectureDomainArchitecture

此序列上的蛋白質域

其他其他物件列表

非 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

表示兩個序列之間的類型關係。

例如,這可以用來描述直系同源 (orthology) (在此情況下,屬性 ‘type’ 為 ‘orthology’)。

參數:
id_ref_0Id

第一個序列參考識別符

id_ref_1Id

第二個序列參考識別符

distancefloat

兩個序列之間的距離

type受限字串

描述關係的類型

confidence信賴度

此關係的信賴度值

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

連結

其他其他物件列表

非 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 的字串表示。