【发布时间】:2021-05-31 14:41:56
【问题描述】:
我正在尝试学习 Earth Lab 地球分析 Python 课程。最近从使用 RasterIO 到 RioXArray 的变化。 我正在使用教程中提供的完全相同的数据,这些数据与 RasterIO 完美配合,但是当尝试使用教程中指示的确切方法打开相同的数据时,它会失败并给出与设置错误变量相关的错误
rioxarray.open_rasterio(datapath)
链接到tutorial
---------------------------------------------------------------------------
AttributeError Traceback(最近一次调用最后一次) ~/anaconda3/envs/myenv/lib/python3.8/site-packages/xarray/core/common.py in setattr(self, name, value) 267尝试: --> 268 个对象。setattr(self, name, value) 269 除了 AttributeError as e:
AttributeError: 'DataArray' 对象没有属性 '_file_obj'
上述异常是以下异常的直接原因:
AttributeError Traceback(最近一次调用最后一次) 在 ----> 1 rxr.open_rasterio(数据路径)
~/anaconda3/envs/myenv/lib/python3.8/site-packages/rioxarray/_io.py in open_rasterio(filename, parse_coordinates, chunks, cache, lock, masked, mask_and_scale, variable, group, default_name, * *open_kwargs) 866 867 # 使文件可关闭 --> 868 结果._file_obj = 经理 869 870返回结果
~/anaconda3/envs/myenv/lib/python3.8/site-packages/xarray/core/common.py in setattr(自我,名称,值)
274):
275 加薪
--> 276 引发属性错误(
277“无法在 %r 对象上设置属性 %r。使用 setitem 样式”
278 "赋值(例如ds['name'] = ...)而不是赋值变量。"
AttributeError:无法在“DataArray”对象上设置属性“_file_obj”。使用 setitem 样式分配(例如,ds['name'] = ...)而不是分配变量。
【问题讨论】: