Piploum | Bonjour, Je cherche à écrire en python des données dans un fichier de type NetCDF.
J'ai défini deux variables, l'une de type float, pas de problème, mais l'autre est de type string et je n'arrive pas à la mémoriser dans mon fichier.
J'ai pas mal cherché sur les forums spécialisés mais je n'ai rien trouvé de consistant sur ce point.
Mon bout de code est:
Code :
- NVal=cdms2.createVariable( (N.zeros((nvarmax,nlat, nlon)) ),
- typecode = cdms2.MV2.float32,
- id = "val",
- attributes=att_nval)
|
Code :
- NParam=cdms2.createVariable( (OPTIONS["VARS"]),
- typecode = 'string',
- id = "param",
- attributes=att_nparam)
|
et pour le fichier:
Code :
- fout = cdms2.open('NVar.nc','w')
- fout.write( NVal )
- fout.write( NParam )
- fout.close()
|
et le mesage d'erreur:
Code :
- Traceback (most recent call last):
- File "<stdin>", line 1, in <module>
- TypeError: write() got an unexpected keyword argument 'type'
- >>> fout.write( NParam,'string' )
- cdunif: NetCDF: Not a valid data type or _FillValue type mismatch
- cdunif: NetCDF: Not a valid data type or _FillValue type mismatch
- Traceback (most recent call last):
- File "<stdin>", line 1, in <module>
- File "/home/share/unix_files/cdat/versions/cdat_install_trunk_x86_64_gcc4_03/lib/python2.5/site-packages/cdms2/dataset.py", line 1459, in write
- id=varid, extend=extend, fill_value=fill_value, index=index)
- File "/home/share/unix_files/cdat/versions/cdat_install_trunk_x86_64_gcc4_03/lib/python2.5/site-packages/cdms2/dataset.py", line 1391, in createVariableCopy
- newvar = self.createVariable(newname, datatype, axislist)
- File "/home/share/unix_files/cdat/versions/cdat_install_trunk_x86_64_gcc4_03/lib/python2.5/site-packages/cdms2/dataset.py", line 1179, in createVariable
- raise CDMSError, "Creating variable "+name
- cdms2.error.CDMSError: Creating variable param
|
Merci d'avance
|