in reply to Re^3: For- loop increment not passing to inner block
in thread For- loop increment not passing to inner block

I got sidetracked, but finally got back to this and took a look at your ideas, Grandfather. I'm a little disconcerted that your examples are simply reading each row into an array, in different ways. Thanks for the stylistic tips, but I'm not sure how that's relevant to what I'm trying to do (aggregate individual columns for analysis), but I guess I explained it badly. No matter. My stupid error was caught by Count Zero, and my awkward approach works fine for now. I may re-implement it using an array of references (my original idea), but I was aiming for a quick-and-dirty solution (not to worry: it's neither for work or a homework assignment!) :) . Thanks again.
  • Comment on Re^4: For- loop increment not passing to inner block

Replies are listed 'Best First'.
Re^5: For- loop increment not passing to inner block
by GrandFather (Saint) on Mar 31, 2008 at 20:06 UTC

    Sans any context whatsoever, solving the immediate problem of reading and slicing up the file data seemed most helpful.

    With the small amount of additional context you have added a fuller implementation would be:

    use warnings; use strict; my @lines; while (<DATA>) { chomp; push @lines, [unpack ("(a2)*", $_)]; } __DATA__ 0912203749 0725284648 0608294149 0622424347 1219303436 1729313449 1015162331

    which pushes arrays of numbers into an array of lines creating a two dimensional array that you can use in subsequent processing:

    for my $column (0 .. 4) { my @byColumn = map {$_->[$column]} @lines; print "@byColumn\n"; }

    prints:

    09 07 06 06 12 17 10 12 25 08 22 19 29 15 20 28 29 42 30 31 16 37 46 41 43 34 34 23 49 48 49 47 36 49 31

    Perl is environmentally friendly - it saves trees