$plates{$lets}{$number} =1; # or $plates{$lets}{$number}++ if you want to count # and for my $let (sort keys %plates) { print "$let ",join(", ",sort keys %{$plates{$let}}),"\n"; }