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

Re^5: Loosing Negative Values in Array Ref

by Thelonius (Priest)
on Jun 03, 2009 at 16:01 UTC ( #768064=note: print w/ replies, xml ) Need Help??


in reply to Re^4: Loosing Negative Values in Array Ref
in thread Loosing Negative Values in Array Ref

This is very close, see the values for "Zilda Mil", it should display "14.0" but instead its getting the "9.0".
Hmmm, yes, this is because it's using 'gt' rather than '<'. I copied the regex from your program. The best solution (if you're on Perl 5.8 or later) is to use looks_like_number:
use Scalar::Util 'looks_like_number'; for my $aref_acc_num (sort { $a->[0] cmp $b->[0] } values %$acc_num) { push @$all_dta_acc_num, my $tmp = []; for my $aref (@$aref_acc_num) { for my $i (0..1) { $tmp->[$i] = $aref->[$i]; } for my $i (2..$#$aref) { if (!defined($tmp->[$i])) { $tmp->[$i] = $aref->[$i]; } elsif (looks_like_number($tmp->[$i])) { $tmp->[$i] = $aref->[$i] if $aref->[$i] > $tmp->[$i]; } else { $tmp->[$i] = $aref->[$i] if $aref->[$i] gt $tmp->[$i]; } } } }
If you're on an earlier Perl, see perlfaq4.


Comment on Re^5: Loosing Negative Values in Array Ref
Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (6)
As of 2014-11-27 21:24 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (188 votes), past polls