[Bioperl-l] Bio::Search::Tiling::MapTiling error

Dana J. Wohlbach djsomers at wisc.edu
Thu Feb 3 14:58:44 EST 2011


Hi all,

I have been trying to use the Bio::Search::Tiling::MapTiling module to
parse the output of a WU-Blast report, but have been encountering the
error message below.  I have tested this on perl v5.10.0 or v5.8.8
with bioperl v1.6.1 or v1.5.21.  I have also tried parsing either
tBlastN or BlastN (sample attached to this message) reports but get
the same error message, which I have been unable to resolve.  Any
suggestions would be much appreciated.

The script I am running is:

#!usr/bin/perl
use warnings;
use strict;
use diagnostics;

use Bio::SearchIO;
use Bio::Search::Tiling::MapTiling;

my $file = shift;

my $in = new Bio::SearchIO(-format => 'blast',
			   -file   => $file);

while (my $result = $in->next_result ) {
  print "\nQUERY: ", $result->query_name, "\n";

  while ( my $hit = $result->next_hit ) {
    print "  HIT: ", $hit->name;

    my $tiling = new Bio::Search::Tiling::MapTiling(-hit => $hit);
    my $numID = $tiling->identities();
    print "  NUMID: $numID\n";
  }
}

And once it gets to a hit with multiple HSPs, it chokes with the message:

--------------------- WARNING ---------------------
MSG: No HSPS present for type 'query' in context 'p_' for this hit
---------------------------------------------------
Can't use an undefined value as an ARRAY reference at
	/Library/Perl/5.10.0/Bio/Search/Tiling/MapTiling.pm line 963, <GEN1>
line 820 (#1)
    (F) A value used as either a hard reference or a symbolic reference must
    be a defined value.  This helps to delurk some insidious errors.

Uncaught exception from user code:
	Can't use an undefined value as an ARRAY reference at
/Library/Perl/5.10.0/Bio/Search/Tiling/MapTiling.pm line 963, <GEN1>
line 820.
 at /Library/Perl/5.10.0/Bio/Search/Tiling/MapTiling.pm line 963
	Bio::Search::Tiling::MapTiling::_calc_stats('Bio::Search::Tiling::MapTiling=HASH(0x100c37400)',
'query', 'exact', 'p_') called at
/Library/Perl/5.10.0/Bio/Search/Tiling/MapTiling.pm line 279
	Bio::Search::Tiling::MapTiling::identities('Bio::Search::Tiling::MapTiling=HASH(0x100c37400)')
called at DummyParseBlastN.pl line 22


Also, is there any reason that identities (i.e. $tiling->identities())
would return a non-integer?  When I run the above script, I am getting
numbers like 150.686622649381 for some of the tilied HSP identity
values.

Thanks in advance for any help!
Cheers,
Dana

-- 
/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
Dana J. Wohlbach, Ph.D.
Research Associate
University of Wisconsin-Madison
Department of Genetics
Gasch Lab

Genetics-Biotechnology Center
425 Henry Mall
Madison, WI 53706
608-265-0863
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sampleBlastNOut
Type: application/octet-stream
Size: 483095 bytes
Desc: not available
URL: <http://lists.open-bio.org/pipermail/bioperl-l/attachments/20110203/2bedee45/attachment-0001.obj>


More information about the Bioperl-l mailing list