This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Extraction of batch subject sequence from Blast result.
~/ncbi-blast-2.5.0+/bin/makeblastdb -in sub.fna -dbtype nucl -out sub_DB -parse_seqids
~/ncbi-blast-2.5.0+/bin/tblastn -query que.fasta -db sub_DB -outfmt 6 -out result_0.01_out -evalue 0.01  -num_threads 24
~/ncbi-blast-2.5.0+/bin/blastdbcmd -db sub_DB -dbtype nucl -entry_batch entry_range_strand.txt -outfmt "%f" -out Result.fasta
=>entry_range_strand.txt in tab delimited format:
ID_011876373    648494-646719   minus
ID_011876373    648431-646776   minus
ID_011876116    4140-3196   minus
ID_011876116    4140-3196   minus
ID_011872419    523-564 plus
ID_011876146    63749-63793 plus
ID_011876398    601642-601692   plus
ID_011876397    5713673-5713726 plus
ID_011875771    49587-49652 plus

I have followed above method to extract the Blast result sequence. The problem is that result cannot extract the minus strand result properly. However, the result sequence is very good in case of plus strand. Even I have tried by separating both plus and minus strand in the different files but the result doesn't differ. Basically, /blastdbcmd command cannot fetch the sequence range from minus strand, instead, it prints the whole sequence of the corresponding IDs. Hoping for good suggestions and thanks in advance.

minus-strand blastdbcmd

1 answer

the problem might be caused by the fact that the coords for the 'minus' cases are big -> small, while the ones for the plus strand are small->big .

I suggest you switch the coords for the minus strand and try again. Do also double check whether it's the correct strand being returned.

Log in to answer this question.