- or download this
my @columns_to_group_on = (2, 3);
my @columns_to_average = (5, 6);
- or download this
my $group = join("/", @columns[@columns_to_group_on]);
my @row = @columns[@columns_to_average];
- or download this
++$data{$group}{ROWCNT};
$data{$group}{SUMS}[$_] += $row[$_] for 0 .. $#row;
- or download this
my @avg = [ map { $_/$data{$group}{ROWCNT} } @{$data{$group}{SUMS}} ];
print "GROUP $group: [", join(", ", @avg), "]\n";
- or download this
$ perl pm_121222.pl
Collecting the data into groups:
...
GROUP 1/G AVGS [-108.8372, 73.3412]
GROUP 2/S AVGS [-75.969, 10.2868]
GROUP 3/M AVGS [-72.0558, 7.1884]