Thread Arrays aus Datei mit Loops (5 answers)
Opened by Lychness at 2012-12-11 17:00

Gast Lychness
 2012-12-11 17:00
#164135 #164135
Hallo liebe Forenmitglieder.
Ich möchte gerne nach jedem Durchlauf einer while Schleife die Ergebnisse immer in ein neues Array packen und mit diesem Array den geometrischen Mittelwert berechnen.
In der Infile steht immer start, dann neue Zeilen mit jeweils einem Wert pro Zeile, dann End. Dann wieder Start dann neue Zeilen mit jeweils einem Wert pro Zeile dann End usw.

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 use warnings;
use strict;
use Statistics::Descriptive;

open (INFILE, '<wwertenewgene.txt') or die "Opening input file failed: $!\n";
open (OUTFILE, '>TEST.txt'); 


#my $linenumber = 0;
while (<INFILE>)
{
foreach (/start/../end/)
{
my @gene = $_;
next if /start/||/end/;
print OUTFILE "@gene";

# if (<INFILE> =~ m/final/ ){last;}
# do
# {
# print "$linenumber";$linenumber++;
# }
# until ($newgene =~m/newgene/);
}
# print OUTFILE "hallo\n";
}

#print 'Geometrischer Mittelwert: ',
#$stat->geometric_mean(), "\n";



Der Code kann noch nichts wirklich, aber vielleicht erkennt ja jemand was damit anfangen. Die Grundidee ist jedenfalls die Werte zwischen start und end jeweils in einen Array zu packen, aus dem Array den geometrischen Mittelwert bilden und diesen in eine Outfile zu printen. und dann wieder von vorn, bis die letzte Zeile erreicht ist.

Vielleicht kann ja jemand helfen oder ein paar Denkanstöße geben, vielleicht hat ja auch jemand eine idee, wie man das klüger lösen kann. Die Infile sieht in etwa so aus:

start
0.23
0.32434
0.234
1.0
end
start
0.3423
1.4
end
start
....
und irgendwann
start
1.000
0.34234
0.6754
end
final
Last edited: 2012-12-11 17:03:00 +0100 (CET)

View full thread Arrays aus Datei mit Loops