Bio.SeqIO.PirIO 模块

Bio.SeqIO 对 “pir” (也称为 PIR 或 NBRF) 文件格式的支持。

此模块用于将 PIR 或 NBRF 格式文件读写为 SeqRecord 对象。

您应该通过 Bio.SeqIO 函数使用此模块,或者如果文件包含序列比对,则可以选择通过 Bio.AlignIO 使用。

此格式是为蛋白质信息资源 (PIR) 引入的,PIR 是国家生物医学研究基金会 (NBRF) 的一个项目。PIR 数据库本身现在是 UniProt 的一部分。

此文件格式在网上有描述:http://www.ebi.ac.uk/help/pir_frame.html http://www.cmbi.kun.nl/bioinf/tools/crab_pir.html (目前已关闭)

此格式的一个示例文件是

>P1;CRAB_ANAPL
ALPHA CRYSTALLIN B CHAIN (ALPHA(B)-CRYSTALLIN).
  MDITIHNPLI RRPLFSWLAP SRIFDQIFGE HLQESELLPA SPSLSPFLMR
  SPIFRMPSWL ETGLSEMRLE KDKFSVNLDV KHFSPEELKV KVLGDMVEIH
  GKHEERQDEH GFIAREFNRK YRIPADVDPL TITSSLSLDG VLTVSAPRKQ
  SDVPERSIPI TREEKPAIAG AQRK*

>P1;CRAB_BOVIN
ALPHA CRYSTALLIN B CHAIN (ALPHA(B)-CRYSTALLIN).
  MDIAIHHPWI RRPFFPFHSP SRLFDQFFGE HLLESDLFPA STSLSPFYLR
  PPSFLRAPSW IDTGLSEMRL EKDRFSVNLD VKHFSPEELK VKVLGDVIEV
  HGKHEERQDE HGFISREFHR KYRIPADVDP LAITSSLSSD GVLTVNGPRK
  QASGPERTIP ITREEKPAVT AAPKK*

或者,多序列比对的示例

>P1;S27231
rhodopsin - northern leopard frog
MNGTEGPNFY IPMSNKTGVV RSPFDYPQYY LAEPWKYSVL AAYMFLLILL GLPINFMTLY
VTIQHKKLRT PLNYILLNLG VCNHFMVLCG FTITMYTSLH GYFVFGQTGC YFEGFFATLG
GEIALWSLVV LAIERYIVVC KPMSNFRFGE NHAMMGVAFT WIMALACAVP PLFGWSRYIP
EGMQCSCGVD YYTLKPEVNN ESFVIYMFVV HFLIPLIIIS FCYGRLVCTV KEAAAQQQES
ATTQKAEKEV TRMVIIMVIF FLICWVPYAY VAFYIFTHQG SEFGPIFMTV PAFFAKSSAI
YNPVIYIMLN KQFRNCMITT LCCGKNPFGD DDASSAATSK TEATSVSTSQ VSPA*

>P1;I51200
rhodopsin - African clawed frog
MNGTEGPNFY VPMSNKTGVV RSPFDYPQYY LAEPWQYSAL AAYMFLLILL GLPINFMTLF
VTIQHKKLRT PLNYILLNLV FANHFMVLCG FTVTMYTSMH GYFIFGPTGC YIEGFFATLG
GEVALWSLVV LAVERYIVVC KPMANFRFGE NHAIMGVAFT WIMALSCAAP PLFGWSRYIP
EGMQCSCGVD YYTLKPEVNN ESFVIYMFIV HFTIPLIVIF FCYGRLLCTV KEAAAQQQES
LTTQKAEKEV TRMVVIMVVF FLICWVPYAY VAFYIFTHQG SNFGPVFMTV PAFFAKSSAI
YNPVIYIVLN KQFRNCLITT LCCGKNPFGD EDGSSAATSK TEASSVSSSQ VSPA*

>P1;JN0120
rhodopsin - Japanese lamprey
MNGTEGDNFY VPFSNKTGLA RSPYEYPQYY LAEPWKYSAL AAYMFFLILV GFPVNFLTLF
VTVQHKKLRT PLNYILLNLA MANLFMVLFG FTVTMYTSMN GYFVFGPTMC SIEGFFATLG
GEVALWSLVV LAIERYIVIC KPMGNFRFGN THAIMGVAFT WIMALACAAP PLVGWSRYIP
EGMQCSCGPD YYTLNPNFNN ESYVVYMFVV HFLVPFVIIF FCYGRLLCTV KEAAAAQQES
ASTQKAEKEV TRMVVLMVIG FLVCWVPYAS VAFYIFTHQG SDFGATFMTL PAFFAKSSAL
YNPVIYILMN KQFRNCMITT LCCGKNPLGD DE-SGASTSKT EVSSVSTSPV SPA*

与 FASTA 格式一样,每个记录都以一个以“>”字符开头的行开头。然后是两个字母的序列类型 (P1、F1、DL、DC、RL、RC 或 XX),一个分号和标识代码。第二行是自由文本描述。其余行包含序列本身,以星号结束。如上所示的每十个字母间隔的空间块是典型的。

序列代码及其含义
  • P1 - 蛋白质(完整)

  • F1 - 蛋白质(片段)

  • D1 - DNA(例如 EMBOSS seqret 输出)

  • DL - DNA(线性)

  • DC - DNA(环状)

  • RL - RNA(线性)

  • RC - RNA(环状)

  • N3 - tRNA

  • N1 - 其他功能性 RNA

  • XX - 未知

class Bio.SeqIO.PirIO.PirIterator(source)

基类:SequenceIterator

PIR 文件解析器。

__init__(source)

遍历 PIR 文件并生成 SeqRecord 对象。

source - 类文件对象或文件路径。

示例

>>> with open("NBRF/DMB_prot.pir") as handle:
...    for record in PirIterator(handle):
...        print("%s length %i" % (record.id, len(record)))
HLA:HLA00489 length 263
HLA:HLA00490 length 94
HLA:HLA00491 length 94
HLA:HLA00492 length 80
HLA:HLA00493 length 175
HLA:HLA01083 length 188
parse(handle)

开始解析文件,并返回一个 SeqRecord 生成器。

iterate(handle)

遍历 PIR 文件中的记录。

__abstractmethods__ = frozenset({})
__parameters__ = ()
class Bio.SeqIO.PirIO.PirWriter(handle, wrap=60, record2title=None, code=None)

基类:SequenceWriter

用于写入 PIR 格式文件的类。

__init__(handle, wrap=60, record2title=None, code=None)

创建一个 PIR 写入器。

参数
  • handle - 输出文件的句柄,例如 open(filename, “w”) 返回的值

  • wrap - 用于包装序列行的可选行长。默认情况下,将序列包装在 60 个字符处。使用零(或 None)表示不包装,为序列提供一个长行。

  • record2title - 用于返回每个记录标题行中使用的文本的可选函数。默认情况下,使用 record.id、record.name 和 record.description 的组合。

  • code - 可选的序列代码必须是 P1、F1、D1、DL、DC、RL、RC、N3 和 XX 之一。默认情况下,使用 None,这意味着根据记录注释中的分子类型自动检测。

您可以使用

handle = open(filename, "w")
writer = PirWriter(handle)
writer.write_file(myRecords)
handle.close()

或者,遵循顺序文件写入器系统,例如

handle = open(filename, "w")
writer = PirWriter(handle)
writer.write_header() # does nothing for PIR files
...
Multiple writer.write_record() and/or writer.write_records() calls
...
writer.write_footer() # does nothing for PIR files
handle.close()
write_record(record)

将单个 PIR 记录写入文件。