Calculating Averages from a CSV with Perl

Code Here’s a quick one-liner using some UNIX utilities and Perl to construct some nice averages from CSV data: for i in `seq 2 20`; do cat crim_rate_2005_by_state.csv | cut -d , -f $i | perl -e ‘$c=$d=0;$e;while(<>){if(/^\d/){$c+=$_;$d+=1}else{s/\s{2,}/ /g;s/”//g;chomp($e=$_);}} print $e, “: “, $c/$d, “\n”‘; done And now, the spaced out version: #!/bin/bash for i in `seq 2 20`; do cat crim_rate_2005_by_state.csv | \ cut -d , -f $i | \ perl -e ‘$c=$d=0; $e; while(<>){ if(/^\d/){ $c+=$_; $d+=1 } [...]