DATA: A,10 A,11 A,12 A,13 B,15 B,16 C,17 D,18 #### #!/usr/bin/perl use strict; use Data::Dumper; open DATA,"read"; my %sum; while () { next if ( /^ID/ || /^\s$/ ); my ($id, $value) = split( "," ); $sum{$id} = $sum{$id} + $value; } print Dumper \%sum; #### output: $VAR1 = { 'A' => 46, 'D' => '18', 'C' => '17', 'B' => 31 };