#!/usr/bin/env perl
use strict;
use warnings;
my %hoh_test = (
foo1 => { bar => -0.12697, baz => -0.000398154 },
foo2 => { bar => -4.0183e-05, baz => 0 },
foo3 => { bar => 9.966003977e-06, baz => 0.0001939 },
);
my @hoh_data;
for my $k0 (keys %hoh_test) {
for my $k1 (keys %{$hoh_test{$k0}}) {
push @hoh_data, [$k0, $k1, $hoh_test{$k0}{$k1}];
}
}
my $fmt = "foo: %s, ba: %s, value: %s\n";
printf $fmt, @$_ for sort { $b->[2] <=> $a->[2] } @hoh_data;
####
foo: foo3, ba: baz, value: 0.0001939
foo: foo3, ba: bar, value: 9.966003977e-06
foo: foo2, ba: baz, value: 0
foo: foo2, ba: bar, value: -4.0183e-05
foo: foo1, ba: baz, value: -0.000398154
foo: foo1, ba: bar, value: -0.12697
##
##
(
["foo1", "bar", -0.12697],
["foo1", "baz", -0.000398154],
["foo2", "baz", 0],
["foo2", "bar", -4.0183e-05],
["foo3", "baz", 0.0001939],
["foo3", "bar", 9.966003977e-06],
)
##
##
(
["foo1", "baz", -0.000398154],
["foo1", "bar", -0.12697],
["foo3", "baz", 0.0001939],
["foo3", "bar", 9.966003977e-06],
["foo2", "bar", -4.0183e-05],
["foo2", "baz", 0],
)