I have array of hash like this
And I want to group them with only certain columns in a hash of hash like this[ { 'Street'=>'NuN', 'ID'=>'232', 'State'=>'KKDI' 'Forename' =>'alex', 'Surname'=>'davis', }, { 'Street'=>'NuN', 'ID'=>'25452', 'State'=>'TRY', 'Forename'=>'George', 'Surname'=>'Daniel' }, { 'Street'=>'NuN', 'ID'=>'74545', 'State'=>'MDU', 'Forename'=>'Mark', 'Surname'=>'Davies' } ]
but What I have got with my script is All the columns under each of user, Residence.[ { 'User'=>{ 'Forname' =>'' 'Surname'=>'' } 'Residence'=>{ 'Street' =>'', 'State' =>'', }, } ]
I tried with push statements like this push @{$specificResults->{$group}->{$colname}},$AllRecords->{'colname}; but with no luck. Any help is much appreciated. Thanks for your time.foreach my $results(@$hash_of_excel){ my $specificresults = GroupResults($results); } sub GroupResults{ my( $AllRecords )= @_; my $specificResults = {}; foreach my $colname(keys %$AllRecords){ for my $group ('User','Residence','IDs','Profile'){ $specificResults->{$group}->{$colname} = $AllRecords->{$colname}; } } warn Dumper($specificResults); return $specificResults; }
In reply to group certain columns in a hash by spie287
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |