unterschiedliche Anzahl von Zeilen aus Datei ziehen
Verfasst: Freitag 27. August 2010, 08:59
Hallo,
ich bin neu hier und auch in Python bin ich noch recht unerfahren.
Ich versuche mein Problem mal anhand eines Minimalbeispiels zu erklären:
Datei 1 hat eine Tabelle mit x Zeilen und y Spalten:
243 100110100
422 011100101
643 101000110
823 100010010
425 011000100
1075 100110100
1154 111011010
Datei 2 sieht folgendermaßen aus:
243 643 3
422 643 2
643 643 1
823 823 1
425 1075 2
1075 1075 1
1154 1154 1
Die erste Zahlen in den ersten Spalten stimmen überein. Ich möchte nun für jede Zeile eine Datei schreiben, in der genauso viele Zeilen aus Datei 1 stehen wie in Spalte 3 von Datei 2 angegeben. Für jede Zeile würde ich spontan eine for Schleife schreiben, aber da stört die unregelmäßige Anzahl an Zeilen die ich jeweils raus ziehen möchte. Vielleicht ist auch was mit einer if Abfrage möglich (wenn Zahl in Spalte 1 in beiden Dateien übereinstimmen, dann ziehe soviel Zeilen raus wie in Spalte 3 genannt :K )?
Für mein Minimalbeispiel sähen die gewünschten Ausgabedateien folgendermaßen aus:
hier sieben Zeilen in Datei 1- also sieben Dateien:
erste:
243 100110100
422 011100101
643 101000110
zweite:
422 011100101
643 101000110
dritte:
643 101000110
vierte:
823 100010010
fünfte:
425 011000100
1075 100110100
sechste:
1075 100110100
siebte:
1154 111011010
Wäre toll wenn jemand eine Idee hätte wie ich das Problem lösen kann. Vielen Dank schonmal im Voraus
P.S.: Die Dateien sind natürlich wesentlich größer. Ich habe meinen Code hier nicht reingestellt, weil das nur ein Teilproblem darstellt. Es wird noch transponiert, zusammengefasst, gerechnet,.....
ich bin neu hier und auch in Python bin ich noch recht unerfahren.
Ich versuche mein Problem mal anhand eines Minimalbeispiels zu erklären:
Datei 1 hat eine Tabelle mit x Zeilen und y Spalten:
243 100110100
422 011100101
643 101000110
823 100010010
425 011000100
1075 100110100
1154 111011010
Datei 2 sieht folgendermaßen aus:
243 643 3
422 643 2
643 643 1
823 823 1
425 1075 2
1075 1075 1
1154 1154 1
Die erste Zahlen in den ersten Spalten stimmen überein. Ich möchte nun für jede Zeile eine Datei schreiben, in der genauso viele Zeilen aus Datei 1 stehen wie in Spalte 3 von Datei 2 angegeben. Für jede Zeile würde ich spontan eine for Schleife schreiben, aber da stört die unregelmäßige Anzahl an Zeilen die ich jeweils raus ziehen möchte. Vielleicht ist auch was mit einer if Abfrage möglich (wenn Zahl in Spalte 1 in beiden Dateien übereinstimmen, dann ziehe soviel Zeilen raus wie in Spalte 3 genannt :K )?
Für mein Minimalbeispiel sähen die gewünschten Ausgabedateien folgendermaßen aus:
hier sieben Zeilen in Datei 1- also sieben Dateien:
erste:
243 100110100
422 011100101
643 101000110
zweite:
422 011100101
643 101000110
dritte:
643 101000110
vierte:
823 100010010
fünfte:
425 011000100
1075 100110100
sechste:
1075 100110100
siebte:
1154 111011010
Wäre toll wenn jemand eine Idee hätte wie ich das Problem lösen kann. Vielen Dank schonmal im Voraus
P.S.: Die Dateien sind natürlich wesentlich größer. Ich habe meinen Code hier nicht reingestellt, weil das nur ein Teilproblem darstellt. Es wird noch transponiert, zusammengefasst, gerechnet,.....