use Data::Dump qw(pp); chomp(my @lines = ()); my $sums = {}; for my $line (@lines) { my ($num,$let) = split ',', $line; $sums->{$let} += $num; } say pp($sums);