我已经访问了Anaconda提示,以了解我将要工作的环境。
在那里之后,我将目录更改为我将要使用的grib文件所在的位置,为了安装cfgrib,我使用了以下命令:
conda install -c conda-forge cfgrib
由于Python模块依赖于ECMWF ecCodes二进制库,因此在同一个Anaconda提示符中,我运行了以下命令:
conda install -c conda-forge eccodes
然后,在Spyder中打开文件,并尝试运行以下简单脚本:
import xarray as xr
ds = xr.open_dataset('download.grib', engine='cfgrib')
ds但是得到了以下错误:
无法读取索引文件'C:\Users\name\Desktop\data\download.grib.90c91.idx‘跟踪(最近一次调用):文件"C:\Users\name\anaconda3\envs\Weather\lib\site-packages\cfgrib\messages.py",第351行,在from_indexpath_or_filestream self =cls.from_indexpath(索引路径)文件"C:\Users\name\anaconda3\envs\Weather\lib\site-packages\cfgrib\messages.py",第323行中在from_indexpath中返回pickle.load(文件) EOFError:没有输入
然后,
启动内核ECCODES错误时引起的错误:无法找到boot.def。上下文path=D:/bld/eccodes_1593015095851/_h_env/Library/share/eccodes/definitions
可能的原因:-软件没有正确安装-环境变量ECCODES_DEFINITION_PATH已定义,但不正确的ecCodes断言失败:“0”在ECCODES_DEFINITION_PATH中

我在这里错过了什么?
编辑1
如果使用Visual代码,也会发生此问题。
在终端中,如果我位于GRIB文件存储的目录中,并且激活正在使用的环境:
conda activate Weather然后:
& C:/Users/name/anaconda3/envs/Weather/python.exe c:/Users/name/Desktop/data/3_climate/2mtemp_open.py它给出了与上面相同的错误。
发布于 2020-10-27 09:45:22
正如错误所述,没有设置ECCODES_DEFINITION_PATH。
由于我在Windows 10上使用Anaconda,路径如下
C:/Users/[USER]/Anaconda3/envs/envgeo/Library/share/eccodes/definitions为了设置环境变量,可以简单地运行
setx ECCODES_DEFINITION_PATH "[ECCODES definition path/directory]"这应该能解决这个问题。
然而,一个新的可能出现。由于.grib文件可能需要很长时间才能运行,所以请考虑使用NetCDF格式的数据。
https://stackoverflow.com/questions/62939533
复制相似问题