in reply to How to add values of hash by reading from different text files

Another possible solution... In this case, I just combined all your data into a single input for easier manipulation.
#!/usr/bin/perl use strict; use Data::Dumper; my %chromosome; while( <DATA> ) { my ($name, $pos, $val1, $val2) = split; if ( defined( $chromosome{$name}{$pos} )) { $chromosome{$name}{$pos}[0] = $chromosome{$name}{$pos}[0] + $v +al1; $chromosome{$name}{$pos}[1] = $chromosome{$name}{$pos}[1] + $v +al2; } else { $chromosome{$name}{$pos} = [$val1, $val2]; } } print Dumper(\%chromosome); __DATA__ chromosome1 50000 12 20 chromosome2 20000 0 21 chromosome3 41444 9 2 chromosome4 21414 4 1 chromosome1 50000 41 51 chromosome2 20000 1 20 chromosome3 41444 2 11 chromosome6 12141 12 22 chromosome1 50000 11 2 chromosome2 20000 3 22 chromosome3 41444 2 15
  • Comment on Re: How to add values of hash by reading from different text files
  • Download Code