This seems to be what you want:
use strict; use warnings; use Data::Dumper; my %nhash; my %main = ( 'main1' => {'m1sec1'=> ['A','B','C'],}, 'main2' => {'m2sec1'=> ['D','E','F'],},); my %seed = ( 'seed' => {'seed1'=> ['X','Y','Z']},); my @main1 = @{$main{'main1'}{'m1sec1'}}; my @main2 = @{$main{'main2'}{'m2sec1'}}; my @seed_a = @{$seed{'seed'}{'seed1'}}; my @m1sec1; my @m2sec1; for my $s (@seed_a) { push @m1sec1, "$_$s" for (@main1); push @m2sec1, "$_$s" for (@main2); } $main{'main-join1'} = {'m1sec1' => [@m1sec1]}; $main{'main-join2'} = {'m2sec1' => [@m2sec1]}; print Dumper \%main;
$VAR1 = { 'main-join1' => { 'm1sec1' => [ 'AX', 'BX', 'CX', 'AY', 'BY', 'CY', 'AZ', 'BZ', 'CZ' ] }, 'main2' => { 'm2sec1' => [ 'D', 'E', 'F' ] }, 'main1' => { 'm1sec1' => [ 'A', 'B', 'C' ] }, 'main-join2' => { 'm2sec1' => [ 'DX', 'EX', 'FX', 'DY', 'EY', 'FY', 'DZ', 'EZ', 'FZ' ] } };
In reply to Re: Accumulating a Hash from Pairwise Comparison
by GrandFather
in thread Accumulating a Hash from Pairwise Comparison
by neversaint
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |