在编码变量之前,需要将_FillValue和missing_value设置为相同的值。可以使用如下代码示例解决问题:
import netCDF4 as nc
# 打开.nc文件
ds = nc.Dataset('test.nc', 'w', format='NETCDF4')
# 定义“lat”变量
lat = ds.createVariable('lat', 'f4', ('lat',))
lat.setncattr('_FillValue', np.nan) # _FillValue设为nan
lat.setncattr('missing_value', -9999.0) # missing_value设为-9999.0
# ...
# 写入数据
# ...
# 关闭nc文件
ds.close()
在这个示例中,我们将"_FillValue"设置为NaN,"missing_value"设置为-9999.0。这样,在写入数据之前,两个变量的值将相同,就不会存在冲突。