Thread Schwarzsche Transformation oder wie sortiere ich Tabellen in Perl
(7 answers)
Opened by Ramona2012 at 2012-05-03 15:38
Hallo,
ich arbeite mich seit drei Wochen in Perl ein und stehe jetzt vor folgendem Problem: ich habe einen Array, bei welchem jedes Element die Form >locus 2 transcript 3/12 confidence 2.000 length 238 hat. ich möchte nun aus diese "Liste" ordnen. Meine Idee war zunächst die Arrayelemente tab-separiert zu splitten und dann zu sortieren, meine bemühungen sind jedoch gescheitert. geordnet werden soll nach locus [2], länge [8], dann nach confidence [6]. ich bin auf die Schwarzsche-Transformation gestoßen und erhalte jedoch immer wieder folgenden Fehler: Use of uninitialized value in numeric comparison (<=>) at Bach/Script/try.pl line 8. mein Script sieht folgender maßen aus: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #!/usr/bin/perl -w use strict; use vars qw( @a @b ); open (INFILE, "/idtab.txt") or die $!; my @array = <INFILE>; close (INFILE); my @sorted = map { $_->[0] } sort { $a->[1] <=> $b[1] or $b->[2] <=> $a[2] or $a->[3] <=> $b[3] } map {[$_,(split(/\t/,$_))[2,8,6]] } @array; print @sorted; kann mir jemand sagen, was ich falsch mache oder wie ich mein Problem lösen kann? vielen dank im voraus! ramona modedit Editiert von pq: code-tags hinzugefügt Last edited: 2012-05-03 15:47:56 +0200 (CEST) |