使用 xarray open_dataset 或 open_mfdataset 加载 NARR netcdf 数据集(例如ftp://ftp.cdc.noaa.gov/Datasets/NARR/monolevel/air.2m.2010.nc)时,xarray 返回有关“冲突 _FillValue 和缺失值”。
输入:
ds = xarray.open_dataset('air.2m.2010.nc')
产生此错误:
ValueError: ('Discovered conflicting _FillValue and missing_value. Considering opening the offending dataset using decode_cf=False, corrected the attributes', 'and decoding explicitly using xray.conventions.decode_cf(ds)')
使用建议打开时:
ds = xarray.open_dataset('air.2m.2010.nc',decode_cf=False)
,
数据集已打开,但变量、时间、坐标等未解码(显然)。由于遇到相同的错误,使用xarray.decode_cf(ds)
显式似乎无助于成功解码数据集。
我相信这个错误的出现是因为 NARR 数据集是一个 Lambert Conformal 并且由于网格的形状而存在一些缺失值,因为它是由 xarray 打开的,并且由于某种原因,这与填充值冲突。
在 xarray 中打开和解码此文件的最佳方法是什么?
注意我已经能够使用 netcdf4-python 打开和解码,但希望能够在 xarray 中执行此操作,以利用 dask 提供的核心计算功能。