test.dat AAA01,1.45,0.42,1.54,1.49,1.47,1.36,1.81,0.47,1.8,0.55 ABA05,1.29,1.09,1.13,1.88,1.11,1.44,1.25,1.23,1.05,1.39 BCD06,4.58,4.24,3.87,3.9,4.13,2.04,3.34,7.6,3.58,1.26,7.45 DFG12,26,26.34,24.59,26.46,26.24,26.14,32.35,31.77,31.77 MJK82,8.27,13.23,7.73,8.85,9.15,13.95,0,0,0,0,0 POU45,3.07,3.14,2.97,3.28,21.65,54.23,3.16,3.02,3.26 RTY76,1.22,1.3,1.11,0.92,1.57,1.06,1.01,0.87,0.93 SDH45,15.38,12,22.32,23.3,19.74,46.42,2.06,1.7,2.17 WPL02,13.24,13.23,7.73,8.85,9.15,13.95,0,0,0,0,0 #### open my $CPUFILE, "<", $file or die "Unable to open sorted file $!"; my @col_total; my @col_count; my @col_average; while (<$CPUFILE>) { chomp; my @f = split /,/; shift @f; # remove the 1st column my $num_cols = scalar @f; for my $i (0 .. $num_cols-1) { my $val = $f[$i]; if ($val>0) { $col_count[$i]++; $col_total[$i] += $val; } } } for my $i (0 .. $#col_num) { $col_average[$i] = $col_total[$i]/$col_count[$i]; print "Column ", ($i + 2), " Average = $col_average[$i]\n"; } close $CPUFILE or die; my $total = 0; $total += $_ for @col_average; print "Average CPU Time for Column for all servers in cpuatest.dat file is "; print $total/@col_average, "\n";