[Bioperl-l] New to Bio::Tools::Run::RemoteBlast

armendarez77 at hotmail.com armendarez77 at hotmail.com
Mon Sep 21 17:01:12 EDT 2009







Hello,

Is there a function to blast one query sequence against multiple blast databases?  For example, I want to blast a sequence against all Microbial Genomes.  Currently, I can do it by placing multiple Microbial databases (eg. Microbial/100226, Microbial/101510, etc) into an array and iterate through them using a foreach loop.  Each individual database is placed in the '-data' parameter and the blast is performed.

Example Code:

use strict;
use Bio::Tools::Run::RemoteBlast;

my @microbDbs = qw(Microbial/100226 Microbial/101510 Microbial/103690 Microbial/1063);
my $e_val= '1e-3';

foreach my $db(@microbDbs){
  my @params = ( '-prog' => $prog,
                         '-data' => $db,
                         '-expect' => $e_val,
                         '-readmethod' => 'xml' );

  my $factory = Bio::Tools::Run::RemoteBlast->new(@params);
  my $v = 1;
  my $str = Bio::SeqIO->new(-file=>'test.fa' , '-format' => 'fasta' );
  while (my $input = $str->next_seq()){
    my $r = $factory->submit_blast($input);

    #Code continues...

}

Is there a more efficient way to accomplish this?

If this topic has been discussed please point the way.

Thank you,

Veronica

 		 	   		  
_________________________________________________________________
Microsoft brings you a new way to search the web.  Try  Bing™ now
http://www.bing.com?form=MFEHPG&publ=WLHMTAG&crea=TEXT_MFEHPG_Core_tagline_try bing_1x1



More information about the Bioperl-l mailing list