numpy 安装rioxarray时出现RuntimeError

wlzqhblo  于 2023-05-07  发布在  其他
关注(0)|答案(4)|浏览(237)

当我尝试安装rioxarray时:

pip install rioxarray

我得到以下错误:

RuntimeError: The current Numpy installation (...) fails to pass a sanity check due to a bug in the windows runtime.

我搜索了一下here,建议将numpy降级到1.19.3。
但对我没用。
是否有任何进一步的建议?
操作系统:Windows 10,Python:3.8.5
先谢谢你。

yzckvree

yzckvree1#

是的,在这种情况下使用numpy==1.19.3没有帮助。如果你不介意使用anaconda,可以安装rioxarray。安装过程中没有任何警告,conda会处理所有依赖项。

> conda create -n myproj
> conda activate myproj
> conda install -c conda-forge rioxarray

> python 
Python 3.9.1 | packaged by conda-forge | (default, Dec  9 2020, 01:07:06) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>import rioxarray
>>>print(rioxarray.__version__)
0.1.1
ctrmrzij

ctrmrzij2#

通过阅读错误消息,我发现问题实际上返回到rioxarray的一个名为 rasterio 的依赖项,它不能由pip安装。它甚至在其document中提到,它应该通过 .whl 文件安装。
顺便说一下,我做了以下所有步骤来解决这个问题。我不知道哪一个是关键的,但把它们作为一个整体来做就解决了我的问题。
1.虽然我已经安装了 GDAL,但我在这里通过其wheel文件将其升级到 3.1.4
1.我安装了菲奥娜1.8.18
1.我安装了rasterio 1.1.8
1.然后pip install rioxarray

**注1:**对于那些不知道如何安装.whl文件的人,这个link可能会有帮助。您所需要做的就是在文件目录中运行pip install <filename>.whl
**注2:**感谢lww,在anaconda环境中不需要这样做,安装rioxarray工作正常。

llew8vvj

llew8vvj3#

我使用python3和pip3:

  • pip3 install virtualenv
  • python3 -m virtualenv myproj
  • source myproj/bin/activate
  • pip3 install rioxarray
ifsvaxew

ifsvaxew4#

您可以使用instld库在运行时直接将rioxarray安装在隔离的上下文中。
安装它:

pip install instld

然后像下面这样使用:

import installed

with installed('rioxarray'):
    from rioxarray import something  # Substitute the correct import.

在这种情况下,rioxarray将安装在一个隔离的上下文中,在退出上下文管理器后,该上下文将自动销毁。这是针对不同库的各种不兼容性的通用补救措施。

相关问题