in reply to Illegal division by zero

I see a couple of issues with this code:

use warnings; use strict; use Data::Dump; # Debug use Text::CSV; use List::Util qw/sum/; my $filename = 'part4.csv'; my $csv = Text::CSV->new({binary=>1, auto_diag=>2}); open my $fh, '<', $filename or die "$filename: $!"; my @windsordigits; while ( my $row = $csv->getline($fh) ) { dd $row; # Debug if ( $row->[1] =~ /WINDSOR\s+RIVERSIDE/ ) { push @windsordigits, $row->[3]; } } $csv->eof or $csv->error_diag; close $fh; dd @windsordigits; # Debug die "No digits" unless @windsordigits; my $average = sum(@windsordigits) / @windsordigits; dd $average; __END__ ["CA006139520", "WINDSOR RIVERSIDE, ON CA", "2018-01-02", 10] ["CA006139520", "FOO", "2018-01-02", 99] ["CA006139520", "WINDSOR RIVERSIDE ON CA", "2018-01-02", 24] ["CA006139520", "RIVERSIDE WINDSOR", "2018-01-02", 99] ["CA006139520", "WINDSOR RIVERSIDE, ON CA", "2018-01-02", 59] (10, 24, 59) 31

Replies are listed 'Best First'.
Re^2: Illegal division by zero
by Random_Walk (Prior) on Jan 24, 2018 at 15:41 UTC
    use Text::CSV

    Well done sir, good idea

    Cheers,
    R.

    Pereant, qui ante nos nostra dixerunt!