netCDF mit python

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
tomateundgurke
User
Beiträge: 4
Registriert: Freitag 20. Mai 2011, 07:20

Ich will in einer netCDF Datei weitere global attributes einfügen. Die netCDF Datei wird als Ausgabe in ArcGIS erzeugt. Zusätzlich möchte ich noch einige Informationen über den Datensatz unterbringen.

Ich habe scipy, numpy und netcdf-4.1.1 installiert und die entsprechenden Funktionen in python importiert (import scipy.io.netcdf, import numpy, import netCDF4). Mit scipy.io.netcdf.netcdf_file kann ich die Dateien nur lesend oder schreibend öffen (r und w). Ich möchte aber eine Datei mit a öffnen (open existing file for write), da bekomme ich aber die Fehlermeldung: ValueError: Mode must be either 'r' or 'w'. Unter http://gfesuite.noaa.gov/developer/netC ... rface.html habe ich gefunden, dass man die Datei mit NetCDFFile() und a öffnen kann. Diese Funktion habe ich aber nicht gefunden, ich bekomme beim Aufruf: NameError: name 'NetCDFFile' is not defined.

Habt ihr eine Idee, wie ich meine bestehende Datei so öffnen kann, dass ich weiteren Informationen einfügen kann?
deets

Zeig mal dein Skript. Es scheint der richtige Import zu fehlen, sowas wie

Code: Alles auswählen

from Scientific.IO import NetCDF
tomateundgurke
User
Beiträge: 4
Registriert: Freitag 20. Mai 2011, 07:20

Wie schon beschrieben importiere ich import scipy.io.netcdf, das ist doch das gleich wie from scipy.io import netcdf!?

import scipy.io.netcdf
import numpy
import netCDF4

filename = 'test.nc'
file = scipy.io.netcdf.netcdf_file(filename, 'a')

Dies gibt dann:

Traceback (most recent call last):
File "netcdf_test.py", line 7, in <module>
file = scipy.io.netcdf.netcdf_file(filename, 'a')
File "...\lib\site-packages\scipy\io\netcdf.py", line 192, in __init__
raise ValueError("Mode must be either 'r' or 'w'.")
ValueError: Mode must be either 'r' or 'w'.
deets

Noe, ist nicht das gleiche. Sonst waere es ja gleich, oder?

Ausserdem ging es mir um das NetCDFFile, dass du nicht gefunden hast. Denn das der andere Weg nicht geht war doch eh schon klar.
tomateundgurke
User
Beiträge: 4
Registriert: Freitag 20. Mai 2011, 07:20

Ich habe es so verstanden, dass die Funktion NetCDFFile in netCDF4 steckt.
tomateundgurke
User
Beiträge: 4
Registriert: Freitag 20. Mai 2011, 07:20

Ich hab's.

Mit from netCDF4 import Dataset und file = Dataset(filename, 'a') kann ich die Datei zum schreiben öffnen und global attributes hinzufügen.

Danke für die Anregungen!
Antworten