http://www.perlmonks.org?node_id=965799


in reply to Sort on Table headers

I have implemented your specification, but did not get the expected result. (Did you mean to sort on distance rather than value?)
use strict; use warnings; use Data::Dumper; my $header = <DATA>; #capture the header line my @headers = split(/\t+/,$header); my @recordsArray; while(my $line = <DATA>){ my @records = split(/\t+/,$line); # print "@records"; push @recordsArray,[@records]; } #print Dumper(\@recordsArray); my @SortedArray = sort {$b->[3]<=>$a->[3] or $b->[2]<=>$a->[2]} @recor +dsArray; print Dumper(\@SortedArray); __DATA__ ID distance score value start stop done remaining + N_425 614 17.01 425 40 12 308 322 N_542 1290 18.74 542 53 15 237 251 N_372 870 15.66 372 80 15 262 276 N_236 814 15.65 236 69 13 185 200