[Bioperl-l] parse blast report for the best evalue

DeeGee gdorjee at hotmail.com
Mon Apr 9 15:40:02 EDT 2007


thank you, Chris.
^ ^*

Chris Fields wrote:
> 
> You should probably use sort_hits() with a coderef that sorts by  
> evalue to ensure that you retrieve the best evalue (significance()  
> for hits) (see POD for Bio::Search::Result::ResultI).  You could then  
> do something like:
> 
> my $hit;
> 
> unless ($result->no_hits_found) {
>     # pass coderef to sort by evalue
>     $result->sort_hits(\&sort_by_evalue);
>     # retrieve first (best) hit
>     $hit = $result->next_hit;
> }
> 
> # do whatever you want with the best Hit
> 
> If you plan on retaining data from hits over a ton of different  
> reports it may be best (memory-wise) to only retain the data you want  
> for each hit instead of retaining the actual object.  For instance,  
> if you only care about the description and evalue set up a simple  
> data structure to house what you want by the query data instead of  
> retaining all the extra stuff in the Hit object you don't need (all  
> the HSP data, etc).
> 
> chris
> 
> On Apr 8, 2007, at 11:18 PM, DeeGee wrote:
> 
>>
>> hi all,
>> i'm trying to parse a blast report using Bio::SearchIO as follows,  
>> but since
>> this blast report is generated with many against many (database) fasta
>> sequences, there're many individual blast reports (one for each of the
>> sequence from the query file). i was wondering if there is a way to  
>> get only
>> the best hit (with best evalue) from each one of them.
>>
>> ##### part of my script ######
>> my $in = new Bio::SearchIO(-format => 'blast',  -file   =>  
>> $blast_report);
>> while( my $result = $in->next_result ) {
>>         while( my $hit = $result->next_hit ) {
>>               ...........
>>
>> thanks.
>>
>>
>> -- 
>> View this message in context: http://www.nabble.com/parse-blast- 
>> report-for-the-best-evalue-tf3545784.html#a9898358
>> Sent from the Perl - Bioperl-L mailing list archive at Nabble.com.
>>
>> _______________________________________________
>> Bioperl-l mailing list
>> Bioperl-l at lists.open-bio.org
>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
> 
> Christopher Fields
> Postdoctoral Researcher
> Lab of Dr. Robert Switzer
> Dept of Biochemistry
> University of Illinois Urbana-Champaign
> 
> 
> 
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
> 
> 

-- 
View this message in context: http://www.nabble.com/parse-blast-report-for-the-best-evalue-tf3545784.html#a9907757
Sent from the Perl - Bioperl-L mailing list archive at Nabble.com.



More information about the Bioperl-l mailing list