[Bioperl-l] wrong nomatch position from protein with singly deleted Aa

Anders Stegmann anst at kvl.dk
Sat Jan 21 18:40:42 UTC 2006


Hi BioPerl! 
 
I have an original protein seq which I blastp (standalone) against the same seq with Aa nr 61 deleted manually. 
 
The result is that the subject nomatch is Aa. E on position 60, which is definitely not a mismatch!!? 
This also happens if I delete two Aa at positions 61 and 62 in the subject seq. 
This does strangely enough not happen if I delete a whole line (60 Aa) in the subject seq. 
 
The result for the query  nomatch is Aa. V at position 61, which is korrekt (the subrutine code is similar to the subject code shown below). 
 
 
the code I use is following: 
 
sub subject_seq_alignment_nomatch_residues { 
 
my ($hsp_obj) = @_; 
my %subject_nomatch_hash = (); 
my @new_subject_string = (); 
 
my @subject_string = split , $$hsp_obj->hit_string; 
 
foreach (@subject_string) { #positioner i visse tilfælde 
 
if ($_ ne '-') {push @new_subject_string, $_}; 
 
} 
 
my $start_subject_number = $$hsp_obj->start('hit'); 
 
$start_subject_number = $start_subject_number - 1; 
 
foreach ($$hsp_obj->seq_inds('hit', 'nomatch')) { 
 
$subject_nomatch_hash{$_} = $new_subject_string[$_ -1 -$start_subject_number];#positionen, trækker derefter den tilsvarende #aminosyre ud af subjekt sekvensen 
} 
 
return %subject_nomatch_hash; 
 
} 
 
It has nothing to do with the foreach (@subject_string) { code or the $start_subject_number (cause it is 0 in this example). I checked! 
 
How can this be? 
 
Regards Anders. 
 
 




More information about the Bioperl-l mailing list