如何解决AttributeError: 模块“dask”没有属性“system”
我在计算集群上运行 Jupyter Notebooks,并且在我的笔记本中安装了完整版的 dask(版本 2.0.0),使用以下方法没有抛出任何错误:
!pip install dask[complete] --user
cat = col.search(experiment_id=['lgm'],table_id='Omon',variable_id='thetao',grid_label='gn')
datasets = cat.to_dataset_dict()
错误是:
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-18-9aec78aebd9f> in <module>
----> 1 datasets = cat.to_dataset_dict()
2 datasets
3 list(datasets.keys())
~/.local/lib/python3.7/site-packages/intake_esm/core.py in to_dataset_dict(self,zarr_kwargs,cdf_kwargs,preprocess,storage_options,progressbar,aggregate)
923
924 self._datasets = {}
--> 925 with concurrent.futures.ThreadPoolExecutor(max_workers=dask.system.cpu_COUNT) as executor:
926 future_tasks = [
927 executor.submit(_load_source,key,source) for key,source in sources.items()
AttributeError: module 'dask' has no attribute 'system'
StackOverflow 上的其他类似问题(关于其他属性)说这些属性肯定包含在 dask 模块中(特别是因为我确定安装了完整版本的 dask),所以这个错误表明我没有我的环境设置正确。请有人解释这意味着什么以及如何解决它?非常感谢。
解决方法
您的 dask 版本于 2019 年 6 月 25 日发布,所以您已经过时两年了。有时这并不重要,但 Intake-esm 是一个相对较新且开发积极的项目,因此它倾向于使用其依赖项的更前沿版本。
小故事:请更新dask!如果您当前环境中的某些内容无法处理升级,您可能需要 venv 或 conda 环境来执行该任务。
,这最终成为我的环境问题。我正在将 dask 更新到与我正在操作的环境不同的环境中。
小故事:更新 dask 修复了它!谢谢你,抱歉这个愚蠢的问题!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。