in reply to how extract values of hash via key
%reverse= reverse(%CodonMap)
This does not do what you think it does.
A hash key in Perl can only have one value. Use Data::Dumper to look at the result:
use Data::Dumper; %reverse= reverse(%CodonMap) print Dumper \%reverse;
You will need to construct your reverse map manually, for example by looping through all keys and values:
use Data::Dumper; my %reverse; while( my( $k,$v )= each %CodonMap) { $reverse{ $v }||= []; push @{ $reverse{ $v }}, $k; }; print Dumper \%reverse;
Then, you will need to adapt your program logic to cater for the fact that you don't have simple scalars in %reverse anymore.
|
|---|