如何创建genbank平面文件

时间:2013-11-12 02:02:26

标签: python bioinformatics biopython

我很难使用Biopython SeqIO创建genbank平面文件(类似于http://www.ncbi.nlm.nih.gov/nuccore/CP003206) 我能够通过

创建一个genbank
simple_seq = Seq(row[15],IUPAC.unambiguous_dna)
simple_seq_r = SeqRecord(simple_seq)
simple_seq_r.id=row[0]
simple_seq_r.description= 'hello' 
SeqIO.write([seqrecord],'out.gbk', "gb")

但是我无法写入以下字段,因为seqrecord没有这些字段: 关键词 SOURCE
DBLINK 有机体
特点
位置/限定符

你知道怎么做?感谢

1 个答案:

答案 0 :(得分:0)

SeqRecord类应该具有以下属性中的这些字段:

  • dbxrefs 包含一个包含数据库交叉引用的字符串(DBLINK):' BioProject:PRJNA42399'。
  • 注释是另一个字典,其中包含许多值,包括关键字(注释[' keywords']),例如:评论,分类,有机体,访问。
  • 功能包含这些功能,作为SeqFeature类的实例列表。

有关详细信息,您可以阅读SeqRecord类wiki:http://biopython.org/wiki/SeqRecord和SeqFeature参考页面:http://biopython.org/DIST/docs/api/Bio.SeqFeature.SeqFeature-class.html

您可以做的另一件事是保存您提供的genbank文件并使用SeqIO读取它,然后使用dir()查看您可以使用的实际属性,以及存储为词典的属性,它看到键很有用。像这样的东西(my_file.gbk包含你提供的文件的子序列):

my_record = SeqIO.read('my_file.gbk', 'gb')
print "DBXREFS: ", my_record.dbxrefs
print "ANNOTATIONS: ", my_record.annotations.keys()
print "FEATURES: ", my_record.features

会为您提供有关您提供的文件的更多信息:

DBXREFS:  ['BioProject:PRJNA42399 BioSample:SAMN02603066']
ANNOTATIONS:  ['comment', 'sequence_version', 'source', 'taxonomy', 'keywords', 'references', 'accessions', 'data_file_division', 'date', 'organism', 'gi']
FEATURES:  [SeqFeature(FeatureLocation(ExactPosition(0), ExactPosition(1001), strand=1), type='source'), SeqFeature(FeatureLocation(BeforePosition(0), ExactPosition(471), strand=1), type='gene'), SeqFeature(FeatureLocation(BeforePosition(0), ExactPosition(471), strand=1), type='CDS')]