在此Wiki article中写有
NetCDF用户可以创建HDF5文件
但是我找到了如何实际进行这种转换的麻烦。我唯一能找到的是http://www.hdfgroup.org/HDF-FAQ.html#convnetcdf。这里写着:
Fortner Software有一个名为ncdf2hdf的Windows可执行文件 (已解散)进行转换。它不再可用,但可能 通过搜索网络找到。但是,它的HDF文件 据报道,生成缺乏一些结构 发现在上述路线产生的那些。
我不应该在这里提到在网上找到这个ncdf2hdf真的很难。
到目前为止,我发现我可以使用python来读取http://gfesuite.noaa.gov/developer/netCDFPythonInterface.html或https://code.google.com/p/netcdf4-python/的netcdf文件,但是有更简单的方法。
答案 0 :(得分:8)
首先,查看您的文件使用的netCDF格式。如果您的系统上安装了netCDF,最简单的方法是使用ncdump:
ncdump -k foo.nc
如果ncdump返回netCDF-4
或netCDF-4 classic model
,那么恭喜你已经有了一个HDF文件,因为netCDF-4是使用HDF5作为存储层实现的netCDF数据模型。这些文件可以通过HDF库1.8或更高版本以及我所知道的pytables来准备。
如果ncdump返回classic
或64-bit offset
,那么您使用的是netCDF-3,需要转换为netCDF-4(以及HDF)。好消息是,如果你安装了netCDF,你可以很容易地进行转换:
nccopy -k 4 foo3.nc foo4c.nc
有关详细信息,请参阅netCDF FAQ,具体为this条目。
那就是说,非常值得花时间学习如何使用netCDF-4-python来完成这个任务,而无需中间转换(不要让名字欺骗你,netCDF-4-python可以读取netCDF-3格式,以及大多数netCDF-4文件)。 netCDF-3仍然被广泛使用,甚至在气象界之外,这个额外的箍将在一点之后变得麻烦。更重要的是,如果文件的大小非常大,转换可能会非常耗时。