my @flat_data; for my $file (keys %hoh){ for my $letter (keys %{$hoh{$file}}){ my $weight = $hoh{$file}{$letter}{weight}; my $intensity = $hoh{$file}{$letter}{intensity}; push @flat_data, "weight: $weight intensity $intensity Filename: $file"; } } print "$_\n" for sort @flat_data;