Biopython(或者只是Python):从使用gi标识符的大型.fasta文件中解析物种名称的最有效方法

cc2*_*211 1 python search large-data biopython

我有一个大约145000个条目的.fasta文件(.txt),其格式如下

>gi|393182|gb|AAA40101.1| cytokine [Mus musculus]
MDAKVVAVLALVLAALCISDGKPVSLSYRCPCRFFESHIARANVKHLKILNTPNCALQIVARLKNNNRQV
CIDPKLKWIQEYLEKALNKRLKM

>gi|378792467|pdb|3UNH|Y Chain Y, Mouse 20s Immunoproteasome
TTTLAFKFQHGVIVAVDSRATAGSYISSLRMNKVIEINPYLLGTMSGCAADCQYWERLLAKECRLYYLRN
GERISVSAASKLLSNMMLQYRGMGLSMGSMICGWDKKGPGLYYVDDNGTRLSGQMFSTGSGNTYAYGVMD
SGYRQDLSPEEAYDLGRRAIAYATHRDNYSGGVVNMYHMKEDGWVKVESSDVSDLLYKYGEAAL

>gi|378792462|pdb|3UNH|T Chain T, Mouse 20s Immunoproteasome
MSSIGTGYDLSASTFSPDGRVFQVEYAMKAVENSSTAIGIRCKDGVVFGVEKLVLSKLYEEGSNKRLFNV
DRHVGMAVAGLLADARSLADIAREEASNFRSNFGYNIPLKHLADRVAMYVHAYTLYSAVRPFGCSFMLGS
YSANDGAQLYMIDPSGVSYGYWGCAIGKARQAAKTEIEKLQMKEMTCRDVVKEVAKIIYIVHDEVKDKAF
ELELSWVGELTKGRHEIVPKDIREEAEKYAKESLKEEDESDDDNM
Run Code Online (Sandbox Code Playgroud)
  1. 我有一个gi列表(在|之后列出的第一个数字).
  2. 对于给定的测试,该列表的大小在60-600gi之间变化
  3. 我想返回一个列表,其中包含各种gi的种类
  4. 物种名称通常在第一个例子中看到(由方括号[Mus musculus]包围)并不总是存在.
  5. 订单并不是特别重要.

我一直在使用各种BioPython解析碎片,但我认为由于搜索的大小而失败.我希望这里有人知道更有效的方式吗?

提前致谢!

pet*_*rjc 5

您可以只提取GI编号,然后查找NCBI分类标识,而不是解析物种的不完全一致的FASTA标题行,例如,请参阅http://lists.open-bio.org/pipermail/biopython/2009- 6月/ 005304.html - 从出租车你可以得到物种名称,俗名,血统等.请参阅ftp://ftp.ncbi.nih.gov/pub/taxonomy/taxdump_readme.txt或者如果您更喜欢在线解决方案,Entrez公用事业(EUtils)是另一种选择.