Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re: Iterating through file to find specific subsets of lines

by jethro (Monsignor)
on Dec 04, 2013 at 15:23 UTC ( #1065607=note: print w/replies, xml ) Need Help??


in reply to Iterating through file to find specific subsets of lines

my $dipped=0; my $column; foreach ... ... if ($score < 50) { $dipped= $columns[0] if (not $dipped); } else { print "$dipped $column\n" if ($dipped); $dipped=0; } $column= $column[0]; } print "$dipped $column\n" if ($dipped);

Untested. $dipped is the variable that stores the first score that dips under 50 in a "dip region" and it also signifies that you are in such a region by being not 0. The construct with $column is necessary to get the number on the last line out of the foreach loop if a dipped region lasts until the end, could be avoided by declaring @columns outside the loop.

UPDATE: Removed the off-by-one error found by toolic, using $column to store $column[0] of the previous loop step

Replies are listed 'Best First'.
Re^2: Iterating through file to find specific subsets of lines
by toolic (Bishop) on Dec 04, 2013 at 15:37 UTC
    Using your scalar would be more efficient than my array solution... if you could get rid of your off-by-1 error (tested).

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1065607]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (6)
As of 2020-05-29 21:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    If programming languages were movie genres, Perl would be:















    Results (171 votes). Check out past polls.

    Notices?