[Bioperl-l] searchio scripts

Steve Chervitz Trutane steve at trutane.net
Thu Feb 19 19:33:33 EST 2004


On Feb 18, 2004, at 3:09 PM, Richard Rouse wrote:

> I tried Steve's suggestion by putting this right above:
>   while ( my $blast = $in->next_result() ) {
>
> Then putting another } at the end of the script.
>
> Doing this and then running a large blast output file, I got:
>
> Using SearchIO->new()
>
> Report 1: Bio::Search::Result::BlastResult=HASH(0x87d7fb8)
>
> Report 2: Bio::Search::Result::BlastResult=HASH(0x8dfea60)

The ugly 'HASH' output is because we're no longer overloading "". 
You'll have to call to_string() on the BlastResult object to get 
prettier output.

>
> ------------- EXCEPTION  -------------
> MSG: Trouble in ResultTableWriter::_set_row_data_func() eval:

This is a bug in either the parsing code and/or GenericHit. I get the 
same trouble parsing /t/data/blast.report in the Bioperl distribution. 
Was the report you were parsing a TBLASTN? Could you file a bug report 
on this at http://bugzilla.bioperl.org/ ? Thanks.

Steve

> ------------- EXCEPTION  -------------
> MSG: Can't get identical or conserved data: no data.
> STACK Bio::Search::Hit::GenericHit::matches
> ../..//Bio/Search/Hit/GenericHit.pm:852
> STACK Bio::Search::Hit::GenericHit::frac_identical
> ../..//Bio/Search/Hit/GenericHit.pm:1043
> STACK (eval) (eval 310):1
> STACK Bio::SearchIO::Writer::ResultTableWriter::__ANON__
> ../..//Bio/SearchIO/Writer/ResultTableWriter.pm:327
> STACK Bio::SearchIO::Writer::HitTableWriter::to_string
> ../..//Bio/SearchIO/Writer/HitTableWriter.pm:267
> STACK Bio::SearchIO::write_result ../..//Bio/SearchIO.pm:321
> STACK Bio::SearchIO::blast::write_result 
> ../..//Bio/SearchIO/blast.pm:1495
> STACK toplevel new.mod.hitwriter.pl:106
>
> --------------------------------------
>
>
>
> STACK Bio::SearchIO::Writer::ResultTableWriter::__ANON__
> ../..//Bio/SearchIO/Writer/ResultTableWriter.pm:329
> STACK Bio::SearchIO::Writer::HitTableWriter::to_string
> ../..//Bio/SearchIO/Writer/HitTableWriter.pm:267
> STACK Bio::SearchIO::write_result ../..//Bio/SearchIO.pm:321
> STACK Bio::SearchIO::blast::write_result 
> ../..//Bio/SearchIO/blast.pm:1495
> STACK toplevel new.mod.hitwriter.pl:106
>
> I tried Lincoln's suggestion as well. In this case I added:
>
> my $in = Bio::SearchIO->new(-format=>'blast',-fh=>\*ARGV);
>
> above
>
> while ( my $blast = $in->next_result() ) {
>
>
> This script just runs getting no result.
>
> By the way I am running Suse linux 9.0, perl 5.8.1
>
> Thanks,
> Richard



More information about the Bioperl-l mailing list