This is a test version of Biostars. For the public version, visit https://www.biostars.org.
blastn query coverage filter

I have test.fasta consisting of a single header and read:

>why_no_blast_hit CTGATATCTACATACGTACTCGAGCATCGATCGATGACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCGAGCATCGATCGATGTACAGCTACGTACGTCTTGAGCATCGATCGATGTACAGCTACG TACGTCGAGATCAGAGTGA

Using this as the query in the latest version of blast+ and nt on the command line:

$ blastn -query test.fasta -db ncbi-blast-2.4.0+/db/nt -num_threads 9 -perc_identity 75 -qcov_hsp_perc 55 -outfmt "7 qacc sallseqid evalue bitscore pident qcovs qend sstart send saccver"

Returns:


BLASTN 2.4.0+

Query: why_no_blast_hit

Database: ncbi-blast-2.4.0+/db/nt

Fields: query acc., subject ids, evalue, bit score, % identity, % query coverage per subject, q. end, s. start, s. end, subject acc.ver

3 hits found

why_no_blast_hit gi|607346514|gb|KJ488943.1| 9.03e-39 171 88.667 83 195 248 113 KJ488943.1

why_no_blast_hit gi|607346514|gb|KJ488943.1| 1.51e-36 163 88.000 83 164 248 113 KJ488943.1

why_no_blast_hit gi|607346514|gb|KJ488943.1| 1.96e-35 159 87.500 83 228 248 113 KJ488943.1

BLAST processed 1 queries


All three hits to nt have query coverage of 83%. Therefore, bumping up the -qcov_hsp_perc from 55% to 65% should have no effect on the result:

$ blastn -query test.fasta -db ncbi-blast-2.4.0+/db/nt -num_threads 9 -perc_identity 75 -qcov_hsp_perc 65 -outfmt "7 qacc sallseqid evalue bitscore pident qcovs qend sstart send saccver"


BLASTN 2.4.0+

Query: why_no_blast_hit

Database: ncbi-blast-2.4.0+/db/nt

0 hits found

BLAST processed 1 queries


From blastn -help: " -qcov_hsp_perc <real, 0..100=""> Percent query coverage per hsp"

If the query is getting 83% coverage when qcov_hsp_perc is set to 55, why are there no hits when qcov_hsp_perc is increased to 65 with all other settings kept unchanged?

blastn blast2.4.0+ qcov_hsp_perc

1 answer

I think I have figured this one out. While the total query coverage is >80%, if you actually look at the alignments, there's a series of overlapping HSPs, so the qcov_hsp_perc threshold is not being reached. Lesson learned.

Log in to answer this question.