Question: blastp alignment output : scores not in descending order?
gravatar for willing_mh
4.0 years ago by
United States
willing_mh20 wrote:

My understanding is that alignments reported by ncbi blast* tools are always listed in order of decreasing score. However after setting up blastp with a local database I am seeing output where this is not the case as shown below. As evident, the alignment scores are not in listed decreasing order. Any thoughts on what might cause this? thanks. ---

Sequences producing significant alignments:                          (Bits)  Value

  HLA:HLA00355 B*51:10 232 bp                                           471   0.0  
  HLA:HLA03555 G*01:04:05 273 bp                                        469   0.0  
  HLA:HLA00950 G*01:04:02 273 bp                                        469   0.0  
  HLA:HLA03552 G*01:01:16 273 bp                                        470   0.0  
  HLA:HLA03553 G*01:01:15 273 bp                                        470   0.0  
  HLA:HLA00945 G*01:01:07 273 bp                                        470   0.0  
  HLA:HLA03159 G*01:01:14 273 bp                                        470   0.0  
  HLA:HLA03558 G*01:01:19 273 bp                                        470   0.0  
  HLA:HLA03556 G*01:01:17 273 bp                                        470   0.0  
  HLA:HLA03557 G*01:01:18 273 bp                                        470   0.0  
  HLA:HLA13776 G*01:19 273 bp                                           468   0.0  
  HLA:HLA03396 G*01:12 273 bp                                           468   0.0  
  HLA:HLA01802 A*02:67 270 bp                                           471   0.0
blastp blast score • 1.2k views
ADD COMMENTlink modified 16 months ago by Biostar ♦♦ 20 • written 4.0 years ago by willing_mh20

thanks for your comment -  I reformatted the blastp output so it is  easier to read: the e-value is reported at 0.0 for all entries but the score both decreases and increases

ADD REPLYlink written 4.0 years ago by willing_mh20

Because blastp sorts by e-value, equal e-values are output in random order.

ADD REPLYlink written 4.0 years ago by Jean-Karim Heriche21k
gravatar for a.zielezinski
4.0 years ago by
a.zielezinski8.9k wrote:

BLAST always reports hits in order of decreasing max_score of found HSPs (E-value is also calculated based on maximal score of HSP). 

What you see in your output is total_score for a hit. Total score is a sum of HSPs' scores for a given hit. I can only see a fragment of your BLAST output, but I bet that BLAST found one HSP for your top-ranked sequence HLA:HLA00355. It means it is aligned to your query in one segment which achieved the highest score (471 bits). In this case total_score equals max_score. However, the sequence from the botttom of your output (HLA:HLA01802) achieved the same total_score (471 bits), but its alignment is splitted into more than 1 HSP. For example, one HSP could have score of 400 and the other one is 71, they both sum to total score of 471. 

Scroll down your results and look at the alignments to see these differences between scores for HLA:HLA00355 and HLA:HLA01802.





ADD COMMENTlink modified 4.0 years ago • written 4.0 years ago by a.zielezinski8.9k
gravatar for Jean-Karim Heriche
4.0 years ago by
EMBL Heidelberg, Germany
Jean-Karim Heriche21k wrote:

As far as I remember, the default sort order is based on e-value.

ADD COMMENTlink written 4.0 years ago by Jean-Karim Heriche21k
gravatar for willing_mh
3.9 years ago by
United States
willing_mh20 wrote:
thanks for your comment. At this point I would be grateful for any pointers to blast documentation that addresses either of the following points : (1) the criterion used for hit ordering (e-value? score?) (2) a way of setting num_alignments to the maximum, ie to the number of database items searched. Since in this case many e-values are 0, the default ordering is not helpful. Listing all alignments would allow the maximum score to be obtained by scanning the output.
ADD COMMENTlink written 3.9 years ago by willing_mh20

Read blastp -help output. Also, given default outfmt 6 output, you can simply sort by column 1 (query sequence) and column 12 (bit score), i.e. export LC_ALL=C; export LANG=C; sort -k1,1 -k12,12gr blast_output > bscore_sorted_blast_output

ADD REPLYlink modified 3.9 years ago • written 3.9 years ago by 5heikki8.6k
Please log in to add an answer.


Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 1300 users visited in the last hour