ich versuche mich derzeit an Niederschlagsdateien, was aber bei meinem Problem keine wirkliche Rolle spielt. Noch bin ich relativ am Anfang meiner Pythonkarriere Also bin ich für jeden Tipp dankbar.
Das Problem habe ich in den unteren größeren Kommentaren zu meinem Code beschrieben.Es geht im Groben um das wiederholte Speichern von Werten aus mehreren Dateien in einer gemeinsamen .txt Datei.
Ich benutze Python Version 3.6 momentan unter Windows.
Falls jemand hier einen kleinen Tipp hätte,wäre ich sehr dankbar
Grüße Fuchur
Code: Alles auswählen
#Importieren der notwendigen Bibliotheken
import wradlib as wrl
import matplotlib.pyplot as pl
import numpy as np
import os
#Verzeichnis angeben
dir=os.path.join('cygdrive','D:\data\tobias\vergleich hdf-rv\rvdaten2016678\rv160602_19h_20h') #Einlesen der Datei
print("Verzeichnis: ",dir)
#Daten auslesen für die 1. Stunde der Vorhersage
rvdata,rvattrs=wrl.io.read_radolan_composite('D:/Data/RV1608281400_005_MF002')
rvdata1,rvattrs1=wrl.io.read_radolan_composite('D:/Data/RV1608281400_005_MF002')
rvdata2,rvattrs2=wrl.io.read_radolan_composite('D:/Data/RV1608281400_010_MF002')
rvdata3,rvattrs3=wrl.io.read_radolan_composite('D:/Data/RV1608281400_015_MF002')
rvdata4,rvattrs4=wrl.io.read_radolan_composite('D:/Data/RV1608281400_020_MF002')
rvdata5,rvattrs5=wrl.io.read_radolan_composite('D:/Data/RV1608281400_025_MF002')
rvdata6,rvattrs6=wrl.io.read_radolan_composite('D:/Data/RV1608281400_030_MF002')
rvdata7,rvattrs7=wrl.io.read_radolan_composite('D:/Data/RV1608281400_035_MF002')
rvdata8,rvattrs8=wrl.io.read_radolan_composite('D:/Data/RV1608281400_040_MF002')
rvdata9,rvattrs9=wrl.io.read_radolan_composite('D:/Data/RV1608281400_045_MF002')
rvdata10,rvattrs10=wrl.io.read_radolan_composite('D:/Data/RV1608281400_050_MF002')
rvdata11,rvattrs11=wrl.io.read_radolan_composite('D:/Data/RV1608281400_055_MF002')
rvdata12,rvattrs12=wrl.io.read_radolan_composite('D:/Data/RV1608281400_060_MF002')
#Bilden der Stundensumme des Niederschlags für die 1. Stunde
summe_1h=(rvdata+rvdata1+rvdata2+rvdata3+rvdata5+rvdata6+rvdata7+rvdata8+rvdata9+rvdata10+rvdata11+rvdata12)
Maxwert_test1=summe_1h[776:802,531:557] #Maximalwerte über 3 mm für einen bestimmten Ausschnitt
Maxwerte_1h=Maxwert_test1[Maxwert_test1>3]
#Ausgabe der Maximalwerte und des Maximalwertes
print("Stundensumme > 3: ",Maxwerte_1h)
print("Maximalwert der Stundensumme 1h: ", np.max(Maxwerte_1h))
#Schreiben der Maximalwerte in eine Textdatei
datei = open('Maxwerte_1h.txt','a',newline='\n')
x=Maxwerte_1h
np.savetxt("Maxwerte_1h.txt",x)
#Maximalwerte in Textdatei speichern funktioniert einmalig für die erste Stunde um Punkt 14:00 Uhr.Wenn ich nun das Programm bei der #nächsten Dateien durchlaufen lasse( z.B.: 14:05) ,werden die Werte in der Textdatei überschrieben und nicht angehängt.Ich dachte, durch 'a' #wird es angehängt an den vorherigen Teil?Wo ist mein Denkfehler?
Maxwert_1h=np.max(Maxwerte_1h) #Ermitteln des höchsten Maximalwertes
datei2=open('Maxwert_1h.txt','a',newline='\n') #Den höchsten Maximalwert in Textdatei speichern
datei2.write(str(Maxwert_1h))
#Hier wird alles so gespeichert,wie es soll.Auch bei der Anwendung auf die nächste Datei wird der neue Wert nun angehängt.Das Problem #hier ist, dass ich gerne jeden Wert in einer eigenen Zeile vorliegen hätte,der neue höchste Maximalwert aber wirklich direkt an den #vorherigen Wert der letzten Dateien angehängt wird ohne einen Zeilenumbruch oder ein Leerzeichen.(egal was ich bisher getestet habe)
#Habt ihr irgendwelche Ideen? Vielen Dank im Voraus :-)