/ / Biopython локална грешка в базата данни BLAST - питон, база данни, път, биопитон, взрив

Биотитон местна грешка на база данни BLAST - питън, база данни, път, биопитон, взрив

Опитвам се да стартирам blastx локално с базата данни "nr", използвайки инструмента на Biopython NcbiblastxCommandline, но винаги получавам следната грешка относно пътя за търсене на базата данни на протеините:

>>> from Bio.Blast.Applications import NcbiblastxCommandline
>>> nr = "/Users/Priya/Documents/Python/ncbi-blast-2.2.26+/bin/nr.pal"
>>> infile = "/Users/Priya/Documents/Python/Tutorials/opuntia.txt"
>>> blastx = "/Users/Priya/Documents/Python/ncbi-blast-2.2.26+/bin/blastx"
>>> outfile = "/Users/Priya/Documents/Python/Tutorials/opuntia_python_local.xml"
>>> blastx_cline = NcbiblastxCommandline(blastx, query = infile, db = nr, evalue = 0.001, out = outfile)
>>> stdout, stderr = blastx_cline()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File     "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Bio/Application/__init__.py", line 443, in __call__
stdout_str, stderr_str)
Bio.Application.ApplicationError: Command "/Users/Priya/Documents/Python/ncbi-blast-2.2.26+/bin/blastx -out /Users/Priya/Documents/Python/Tutorials/opuntia_python_local.xml -query /Users/Priya/Documents/Python/Tutorials/opuntia.txt -db /Users/Priya/Documents/Python/ncbi-blast-2.2.26+/bin/nr.pal -evalue 0.001" returned non-zero exit status 2, "BLAST Database error: No alias or index file found for protein database [/Users/Priya/Documents/Python/ncbi-blast-2.2.26+/bin/nr.pal] in search path [/Users/Priya::]"

Аз не съм сигурен как да промените пътя, за да посочите базата данни nr, която изтеглих, но мислех, че посочих правилно, тъй като мога да стартирам този код от командния ред без никакви проблеми:

Priyas-iMac:~ Priya$ /Users/priya/Documents/Python/ncbi-blast-2.2.26+/bin/blastx -query /Users/priya/Documents/Python/Tutorials/opuntia.txt -db /Users/priya/Documents/Python/ncbi-blast-2.2.26+/bin/nr -out /Users/priya/Documents/Python/Tutorials/opuntia_local.xml -evalue 0.001 -outfmt 5

Горният код на командния ред създава xml файл на резултатите от взрива, както бих очаквал.

Всяка помощ за решаване на този проблем с инструментите на командния ред на Biopython NCBI ще бъде оценена много!

Отговори:

5 за отговор № 1

Вашият nr променливата приключва nr.pal. nr (без .pal) Би трябвало да е добре. Ако се премахне pal не работи. Можете да опитате да настроите .ncbirc файл във вашата домашна директория, който има следното:

[BLAST]
BLASTDB=/directory/path/to/blast/databases

По същество той създава променлива на обкръжението за търсене на бази данни. След това можете просто да използвате nr (Не е необходим път) във Вашата nr променлива.

Между другото, можете да проверите конструирания от командния ред NcbiblastxCommandline използвайки print blastx_cline, Предполагам, че не е същото като това, което сте въвели ръчно.

EDIT: Проверете http://www.biostars.org/ за специфични за биоинформацията въпроси, подобни на формата на StackExchange.


1 за отговор № 2

Изглежда командата, която работи, изброява различен db от този, който се извиква от извадката на кода:

# In the code
-db /Users/Priya/Documents/Python/ncbi-blast-2.2.26+/bin/nr.pal

срещу.

# From the command line
-db /Users/priya/Documents/Python/ncbi-blast-2.2.26+/bin/nr

Опитайте да промените присвояването на този път на nr в ред 2, така че да отразява пътя без ".pal", който използвате от командния ред.