首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Grib转换为netcdf4

将Grib转换为netcdf4
EN

Stack Overflow用户
提问于 2020-11-21 06:04:24
回答 2查看 1.8K关注 0票数 1

我从ECMWF下载了grib格式的Era interim数据。有没有办法将带有多个波段的grib文件转换成netCDF4格式,同时保持波段的格式?

我尝试使用cdo操作,但输出将只是grib文件的第一个带。

代码语言:javascript
复制
cdo -f nc copy input.grib output.nc
EN

回答 2

Stack Overflow用户

发布于 2020-11-23 16:03:37

是的,有一种非常舒适的方式使用pythonxarraycfgrib (需要ECCODES)。

安装cfgrib,就像这里在github页面上提到的那样,你将在eccodes安装中拥有所有需要的grib表。

然后你只需要打开你的grib文件:

代码语言:javascript
复制
import xarray

data = xarray.open_dataset('path_to_grib_file.grib1', engine='cfgrib')
data.to_netcdf('netcdf_file.nc')
票数 1
EN

Stack Overflow用户

发布于 2021-04-24 21:26:28

对于使用ECMWF数据的这类任务,通常最好安装eccode。例如,在mac上,您可以执行以下操作

代码语言:javascript
复制
brew install eccodes

这将为您提供许多有用的命令行工具,只要输入文件位于常规经度/经度网格或常规高斯网格(键"typeOfGrid“应为"regular_ll”或"regular_gg")上,您就可以将其转换为netcdf。

代码语言:javascript
复制
grib_to_netcdf -o output.nc input.grb 

这个工具比CDO更强大,因为它可以处理多个时间轴(例如,具有多个开始日期的季节性预报),还可以处理额外的维度,如合奏成员数量,这可能会使CDO出错。

注意:问题的标题说明netcdf4是必需的,但您使用了-f nc选项。请注意,要使用cdo指定netcdf4,您应该使用

代码语言:javascript
复制
cdo -f nc4 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64937550

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档