Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何命名netcdf文件中的列?_Python 3.x_Netcdf4 - Fatal编程技术网

Python 3.x 如何命名netcdf文件中的列?

Python 3.x 如何命名netcdf文件中的列?,python-3.x,netcdf4,Python 3.x,Netcdf4,如何使用python命名netcdf文件中的列 我使用这样的语法: with Dataset(file_name, 'w', format=NETCDF_FORMAT) as ncfile: ncfile.createDimension('Time', 12) ncfile.createDimension('Simulations', 15) ncfile.createVariable('Asset_value', values, ('Simulations', 'Time')

如何使用python命名netcdf文件中的列

我使用这样的语法:

with Dataset(file_name, 'w', format=NETCDF_FORMAT) as ncfile:
   ncfile.createDimension('Time', 12)
   ncfile.createDimension('Simulations', 15)
   ncfile.createVariable('Asset_value', values, ('Simulations', 'Time'))
我想把一年中的每个月作为每个列的名称,而不是0,1,2。。。netcdf提供的

有没有一种用python实现的方法


非常感谢。

如果我没有弄错,您要做的是以netcdf格式存储。如果您使用nc版本4,您可以做的就是将一个
dict
放入一个
组中

从netCDF4导入数据集
#假设您有dict形式的数据:
输入={'somekey':'somevalue'}
使用数据集('yourncfile.nc','w')作为f:
data=f.createGroup('data'))
对于input.items()中的k,v:
setattr(数据,k,v)
我发现这非常方便,因为
dict
非常适合HDF5数据模型(netcdf4的基础),并且同样可以“加载回”Python。要获取数据“返回”,请执行以下操作:

数据集('yourncfile.nc')作为f:
数据_Out={}
dataOut=f.groups['Data']
对于dataOut.ncattrs()中的attr:
数据输出[attr]=dataOut.getncattr(attr)

注:1)到目前为止,我没有检查这是否也适用于pd.df。2) 如果你是唯一一个使用nc4而其他人都使用nc3,你的同事可能会感到不安。nc4功能可能不适用于为nc3编写的工具;-)