[Bioperl-l] Is it possible to parse BLAST output using IO:String?
Ryan Golhar
golharam at umdnj.edu
Mon Oct 30 20:54:29 UTC 2006
Thanks. How are you getting the output? system()? BTW- I'm using
v1.5.1...
> -----Original Message-----
> From: Bernd Web [mailto:bernd.web at gmail.com]
> Sent: Monday, October 30, 2006 3:45 PM
> To: golharam at umdnj.edu
> Cc: bioperl-l
> Subject: Re: [Bioperl-l] Is it possible to parse BLAST output
> using IO:String?
>
>
> Hi Ryan,
>
> I parse blastn output using IO::String w/o problems:
>
> my $stringfh = new IO::String($input);
> my $in = new Bio::SearchIO(-format => 'blast', -fh => $stringfh);
>
> however this is input does not come via backticks.
>
>
> bernd
>
> On 10/30/06, Ryan Golhar <golharam at umdnj.edu> wrote:
> > I'm trying to parse some blast output w/o actually creating
> the output
> > file. Instead, I'm capturing the output in a variable and
> would like
> > to use IO::String to represent the file:
> >
> > $_ = `megablast -d somedatabase -i somesequence -D 2`;
> > my $blast_file = new IO::String($_);
> > my $searchio = new Bio::SearchIO(-format => 'blast', -fh =>
> > $blast_file);
> > my $results = $searchio->next_result;
> > my $hit = $results->next_hit;
> > if (! defined($hit)) {
> > warn "No BLAST hit for $accession on chr $chr for
> > Seq/$orth_id/$organism\n\n";
> > return;
> > }
> >
> > Now, when Bio::SearchIO tries to read the output line by
> line, instead
> > it reads the entire output as 1 line.
> >
> > If I provide the output in a file and use:
> >
> > my $searchio = new Bio::SearchIO(-format =>
> 'blast', -file =>
> > '/tmp/somefile.blast');
> >
> > This works...so is it possible to use IO::String to provide
> > Bio::SearchIO with BLAST output?
> >
> > Ryan
> >
> > _______________________________________________
> > Bioperl-l mailing list
> > Bioperl-l at lists.open-bio.org
> > http://lists.open-bio.org/mailman/listinfo/bioperl-l
> >
>
More information about the Bioperl-l
mailing list