in reply to How would you code this?
Output:use strict; use warnings; my $previous_x = 0; while (<DATA>) { my ($x, $y) = split; next if $x < $previous_x; $previous_x = $x; print; } __DATA__ 0.0036759 0.4018006 0.0036962 0.4074616 0.0037064 0.4124646 [rest of input data omitted for brevity]
You might also change the relevant code line to:0.0036759 0.4018006 0.0036962 0.4074616 0.0037064 0.4124646 0.0037064 0.4216399 0.0037166 0.4351084 0.0037166 0.4438854 0.0037268 0.4518142 0.0037268 0.4628417 0.0037370 0.4730210 0.0037370 0.4832176 0.0037370 0.4894152 0.0037471 0.4952320 0.0037675 0.4979326 0.0037879 0.5014988 0.0038082 0.5057747 0.0038184 0.5166984 0.0038286 0.5332830 0.0038286 0.5613627 0.0038388 0.6026338 0.0038591 0.6216075 0.0038693 0.6343489 0.0038693 0.6420872 0.0038693 0.6536515 0.0038693 0.6709805 0.0038795 0.6808655 0.0038897 0.6866130 0.0039202 0.6981425 0.0039406 0.7057251 0.0039610 0.7105550 0.0039610 0.7216518 0.0039712 0.7329564 0.0039712 0.7433434 0.0039813 0.7482426 0.0039813 0.7577987 0.0039915 0.7713018 0.0040119 0.7911064 0.0040119 0.8014242 0.0040221 0.8074314 0.0040221 0.8130404 0.0040221 0.8210730 0.0040221 0.8264223 0.0040526 0.8290191 0.0040628 0.8323083 0.0040933 0.8361688 0.0041035 0.8409814 0.0041239 0.8466942 0.0041239 0.8591068 0.0041341 0.864785 0.0041443 0.8760895 0.0041544 0.8858707 0.0041646 0.8995296 0.0041748 0.9034420 0.0041748 0.9111804 0.0041748 0.9187110 0.0041850 0.9221387 0.0041850 0.9288903 0.0041850 0.9357977 0.0041952 0.9453537
if you want to remove duplicate X values.next if $x <= $previous_x;
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: How would you code this?
by BrowserUk (Patriarch) on Apr 07, 2016 at 16:12 UTC | |
by Laurent_R (Canon) on Apr 07, 2016 at 16:25 UTC |