Nur bestimmte Daten auslesen.
Verfasst: Sonntag 20. Dezember 2020, 14:22
Hallo liebe Community,
ich bin ziemlich unerfahren mit python und mit programmieren allgemein. Mein Problem ist folgendes:
Ich habe einen Datensatz, den ich auslesen und ordnen möchte, als Testprojekt, um später größere Datenmengen auszuwerten.
Die Datei hat folgende Inhalte:
./Data/Molekül/Methode_Lösemittel.log\
SCF Done: E(Methode) = -234.446074679 A.U. after 14 cycles\
SCF Done: E(Methode) = -247.848012995 A.U. after 11 cycles\
SCF Done: E(Methode) = -247.848196931 A.U. after 10 cycles\
SCF Done: E(Methode) = -247.858207531 A.U. after 9 cycles\
SCF Done: E(Methode) = -247.848207863 A.U. after 15 cycles\
SCF Done: E(Methode) = -447.848207875 A.U. after 15 cycles\
SCF Done: E(Methode) = -247.844407876 A.U. after 15 cycles\
SCF Done: E(Methode) = -247.845207877 A.U. after 15 cycles\
./Data/Molekül/Methode_Lösemittel.log\
SCF Done: E(Methode) = -249.455555555 A.U. after 12 cycles\
SCF Done: E(Methode) = -229.496754583 A.U. after 10 cycles\
SCF Done: E(Methode) = -249.466786109 A.U. after 8 cycles\
SCF Done: E(Methode) = -549.496787461 A.U. after 7 cycles\
SCF Done: E(Methode) = -449.496787569 A.U. after 7 cycles\
SCF Done: E(Methode) = -249.496787558 A.U. after 6 cycles\
SCF Done: E(Methode) = -249.496787559 A.U. after 5 cycles\
SCF Done: E(Methode) = -249.496787563 A.U. after 4 cycles\
SCF Done: E(Methode) = -249.496787565 A.U. after 4 cycles\
SCF Done: E(Methode) = -249.485678756 A.U. after 4 cycles\
SCF Done: E(Methode) = -249.496787564 A.U. after 5 cycles\
SCF Done: E(Methode) = -249.496787562 A.U. after 5 cycles\
SCF Done: E(Methode) = -249.496787562 A.U. after 3 cycles\
Jetzt möchte ich gerne in der ersten Zeile das Molekül rauslesen und dann jeweils nur den Zahlenwert der Energie (das ist die Zahl nach dem E) mit der größten Zahl vor dem Cycle.
Meine Idee wäre jetzt, dass ich versuche die zahl vor der cylce in einer variable zu speichern und dann einfach zu überprüfen, welche zahl am größten ist und diese Zeile dann ausgeben. Im Internet habe ich herausgefunden, dass man mit Regular expression die Stellen der Zahlen gut finden kann, allerdings habe ich nicht herausgefunden, wie ich den Zahlenwert dann in einer Variable speichern kann.
Vielleicht hat jemand anders ja ne andere oder bessere Idee um diese Problem zu lösen und kann mir vielleicht sagen ob es ne andere Methode als Regula Expression gibt um das herauszubekommen. Freue mich über jede Hilfe.
Vielen Dank im Voraus
ich bin ziemlich unerfahren mit python und mit programmieren allgemein. Mein Problem ist folgendes:
Ich habe einen Datensatz, den ich auslesen und ordnen möchte, als Testprojekt, um später größere Datenmengen auszuwerten.
Die Datei hat folgende Inhalte:
./Data/Molekül/Methode_Lösemittel.log\
SCF Done: E(Methode) = -234.446074679 A.U. after 14 cycles\
SCF Done: E(Methode) = -247.848012995 A.U. after 11 cycles\
SCF Done: E(Methode) = -247.848196931 A.U. after 10 cycles\
SCF Done: E(Methode) = -247.858207531 A.U. after 9 cycles\
SCF Done: E(Methode) = -247.848207863 A.U. after 15 cycles\
SCF Done: E(Methode) = -447.848207875 A.U. after 15 cycles\
SCF Done: E(Methode) = -247.844407876 A.U. after 15 cycles\
SCF Done: E(Methode) = -247.845207877 A.U. after 15 cycles\
./Data/Molekül/Methode_Lösemittel.log\
SCF Done: E(Methode) = -249.455555555 A.U. after 12 cycles\
SCF Done: E(Methode) = -229.496754583 A.U. after 10 cycles\
SCF Done: E(Methode) = -249.466786109 A.U. after 8 cycles\
SCF Done: E(Methode) = -549.496787461 A.U. after 7 cycles\
SCF Done: E(Methode) = -449.496787569 A.U. after 7 cycles\
SCF Done: E(Methode) = -249.496787558 A.U. after 6 cycles\
SCF Done: E(Methode) = -249.496787559 A.U. after 5 cycles\
SCF Done: E(Methode) = -249.496787563 A.U. after 4 cycles\
SCF Done: E(Methode) = -249.496787565 A.U. after 4 cycles\
SCF Done: E(Methode) = -249.485678756 A.U. after 4 cycles\
SCF Done: E(Methode) = -249.496787564 A.U. after 5 cycles\
SCF Done: E(Methode) = -249.496787562 A.U. after 5 cycles\
SCF Done: E(Methode) = -249.496787562 A.U. after 3 cycles\
Jetzt möchte ich gerne in der ersten Zeile das Molekül rauslesen und dann jeweils nur den Zahlenwert der Energie (das ist die Zahl nach dem E) mit der größten Zahl vor dem Cycle.
Meine Idee wäre jetzt, dass ich versuche die zahl vor der cylce in einer variable zu speichern und dann einfach zu überprüfen, welche zahl am größten ist und diese Zeile dann ausgeben. Im Internet habe ich herausgefunden, dass man mit Regular expression die Stellen der Zahlen gut finden kann, allerdings habe ich nicht herausgefunden, wie ich den Zahlenwert dann in einer Variable speichern kann.
Vielleicht hat jemand anders ja ne andere oder bessere Idee um diese Problem zu lösen und kann mir vielleicht sagen ob es ne andere Methode als Regula Expression gibt um das herauszubekommen. Freue mich über jede Hilfe.
Vielen Dank im Voraus