#!/usr/bin/perl -w use strict; use Data::Dumper; my @mans = qw / Joe Mike Rich /; my @tot_updates = qw /12 7 17 /; my @tot_events = qw /45 14 10 /; my @managers; while (@mans) { push @managers, { manager => shift @mans, tot_updates => shift @tot_updates, tot_events => shift @tot_events }; } foreach my $href (@managers) { print "$href->{manager} $href->{tot_updates} ". "$href->{tot_events}\n"; } print Dumper \@managers; ####### or ###### Hash of Array ### @mans = qw / Joe Mike Rich /; @tot_updates = qw /12 7 17 /; @tot_events = qw /45 14 10 /; my %managers; while (@mans) { $managers{shift @mans} = [ shift @tot_updates, shift @tot_events]; } foreach my $manager (keys %managers) { print "$manager @{$managers{$manager}}\n"; } print Dumper \%managers; __END__ ## Array of Hash ### Joe 12 45 Mike 7 14 Rich 17 10 $VAR1 = [ { 'tot_events' => '45', 'tot_updates' => '12', 'manager' => 'Joe' }, { 'tot_events' => '14', 'tot_updates' => '7', 'manager' => 'Mike' }, { 'tot_events' => '10', 'tot_updates' => '17', 'manager' => 'Rich' } ]; ########## Hash of Array #### Joe 12 45 Rich 17 10 Mike 7 14 $VAR1 = { 'Joe' => [ '12', '45' ], 'Rich' => [ '17', '10' ], 'Mike' => [ '7', '14' ] };