Maybe there is a reason for this, but this looks like you should use a different data structure. If I understand it right your AoA looks somewhat like this:

$eventscores = [ [riderid, actionid, score], [riderid, actionid, score], [riderid, actionid, score], ... ];
where neither the riderid nor actionid is unique. And you want to find all scores for each rider assuming the riders are in order. If you can assume that much you might be better off with a datastructure like this:
$eventscores = { riderid => { actionid => score actionid => score ... }, ... };
in which case your code would become
foreach my $rider (keys %$eventscores) { my @scores = values %{$eventscores->{$rider}}; # or, if you need the scores in order my @scores = map {$eventscores->{$rider}{$_}} sort keys %{$eventscore +s->{$rider}}; # do something with $rider and @scores }
I don't know what are you doing with the @scores later, but in either case I do think you should consider starting to use a database. If eg. you wanted to get an average score for each rider you could just run a query like this
select riderid, AVG(score) from eventscores group by riderid order by riderid
and be done with it. If you do not want to have to install a server just use DBD::SQLite.

If you don't know SQL yet, learn it. It'll make many things much easier.


In reply to Re: $#{$array_ref} changes in loop by Jenda
in thread $#{$array_ref} changes in loop by thomc

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.