问题描述
我目前正在尝试使用一个 NetCDF 文件(可以从 https://doi.pangaea.de/10.1594/PANGAEA.828650 下载的开源数据)从该数据集(https://www.nodc.noaa.gov/archive/arc0105/0160558/3.3/data/0-data/spco2_1982-2015_MPI_SOM-FFN_v2016.nc,再次开源)中提取特定纬度。
第一个数据集是定义的全球海洋区域,称为生物群落,我已经成功地从该区域提取了覆盖标记为 16 和 17 的生物群落的区域。
此数据集具有以下网格类型:
gridtype = generic
gridsize = 64800
xsize = 180
ysize = 360
xname = lat
xunits = "degrees latitude"
yname = lon
yunits = "degrees longitude"
xfirst = -89.5
xinc = 1
yfirst = -179.5
yinc = 1
第二种网格类型是海洋碳通量的全球数据集(参数:fgco2_raw),我希望从 Time_varying_Biomes.nc 中生物群落 16 和 17 定义的区域中提取值。
此数据集 spco2_1982-2015_MPI_SOM-FFN_v2016.nc 具有以下网格类型:
gridtype = lonlat
gridsize = 64800
datatype = float
xsize = 360
ysize = 180
xname = lon
xlongname = "longitude"
xunits = "degrees_east"
yname = lat
ylongname = "latitude"
yunits = "degrees_north"
xfirst = -179.5
xinc = 1
当我尝试重新排列 Time_varying 时,执行以下操作:
cdo remapbil,mygridtype Time_varying_Biomes.nc TVB_rg.nc
我收到此错误:
cdo remapbil (Abort): Unsupported generic coordinates (Variable: MeanBiomes)!
以前有没有人遇到过这个问题,你知道我该如何解决吗?如果您需要更多信息来解决问题,请告诉我。
提前致谢!
解决方法
您可以使用 setgrid
运算符解决此问题。
首先创建一个网格文件。这与您提供的相同,但将“通用”替换为“lonlat”:
cdo griddes infile.nc > mygrid
sed -i "s/generic/lonlat/g" mygrid
然后使用CDO设置网格:
cdo setgrid,mygrid infile.nc infile_fixedgrid.nc
然后您应该能够重新整理文件。