1

我正在使用模块 Biopython 模块 NCBIWWW 在线爆破一些序列。我想将我的序列与可用的不同数据库进行对比,但是我找不到它们的完整列表。

这是一个使用“blastn”算法对核苷酸集合数据库进行简单查询的示例。

from Bio.Blast import NCBIWWW

result_handle = NCBIWWW.qblast("blastn", "nt", some_sequence)

如您所见,数据库 Nucleotide 集合被指定为“nt”。例如,如果我想查询 Human GRCh37/hg19 数据库,我应该用什么替换“nt”?如果我想查询其他物种/构建?是否有任何完整的列表可供我在http://blast.ncbi.nlm.nih.gov找到所有可用数据库的简称?

谢谢!

4

3 回答 3

2

通过在https://github.com/biopython/biopython/blob/master/Bio/Blast/NCBIWWW.py的代码中查看 biopython 的文档,它似乎正在查询这个 api http://www.ncbi.nlm.nih .gov/BLAST/Doc/urlapi.html

(...) 此函数不检查参数的有效性,并将值按原样传递给服务器。更多帮助请访问: http ://www.ncbi.nlm.nih.gov/BLAST/Doc/urlapi.html

如您所见,biopython 使您能够查询/解析该 api 的所有方面,包括“数据库”条目。现在的问题,实际上是您的问题是您的数据库的简称是什么,以便被 api 识别。api 的文档不是很好,所以他们没有任何类型的具有有效数据库名称的列表(这完全与 biopython 无关)。

我在 ebi's 找到了这些列表,虽然没有解决问题似乎有帮助

http://www.ebi.ac.uk/Tools/sss/ncbiblast/help/index-核苷酸.html http://www.ebi.ac.uk/Tools/sss/ncbiblast/help/index-protein.html

另一种方法是查看他们如何在公共 ftp ftp://ftp.ncbi.nlm.nih.gov/blast/db/中命名他们的数据库

希望这可以帮助。法比奥

于 2015-04-07T16:16:06.000 回答
0

您可以简单地访问http://blast.ncbi.nlm.nih.gov/Blast.cgi?PROGRAM=tblastn&PAGE_TYPE=BlastSearch&LINK_LOC=blasthome并单击数据库下拉列表,您会在那里找到数据库名称,例如,nr, nt、est 等

尝试http://blast.ncbi.nlm.nih.gov/Blast.cgi?PAGE_TYPE=BlastSearch&PROG_DEF=blastn&BLAST_PROG_DEF=megaBlast&BLAST_SPEC=OGP__9606__9558用于人类基因组。

于 2015-02-06T22:50:56.767 回答
0

此界面中“数据库”下的下拉选项似乎提供了每种 BLAST 类型的选项。我在使用 NCBIWWW 函数的Python 模块的 BLAST 部分中复制了这些选项的名称,并接受这些选项是参数。

于 2022-01-30T06:04:09.970 回答