【问题标题】:why can't I import geopandas?为什么我不能导入 geopandas?
【发布时间】:2018-01-12 22:42:11
【问题描述】:

我唯一的代码行是

import geopandas

它给了我错误

OSError: Could not find libspatialindex_c library file

有人遇到过这种情况吗?在出现此错误之前,我的脚本运行良好。

**请注意,未找到 rtree 模块是一个问题,安装后我收到了上述错误。

【问题讨论】:

标签: python gis geopandas


【解决方案1】:

Docker 用户的 Linux 安装步骤:

RUN apt-get update
RUN apt-get install -y --fix-missing curl autoconf libtool automake
RUN curl -L https://github.com/libspatialindex/libspatialindex/archive/1.8.5.tar.gz | tar -xz
RUN cd libspatialindex-1.8.5 && ./autogen.sh && ./configure && make && make install && ldconfig

【讨论】:

    【解决方案2】:

    我在 Windows 10 的 Linux 子系统中工作时遇到了同样的问题(about this)。使用apt开发人员 安装版本有帮助。即:

    sudo apt install libspatialindex-dev 完成了这项工作。

    我不需要使用make

    编辑:很高兴看到我的回答被多次投票;然而,在撰写本文时,这并不是最流行的答案,它之前是建议使用make 的其他答案。这就是我提到这个命令的原因;而且我认为其他答案无论如何都值得一读。

    【讨论】:

    • 有任何 centos 的空间索引包吗?
    【解决方案3】:

    如果你使用的是 MacOS,那么简单如下:

    brew install spatialindex
    pip install rtree
    

    如果您在 linux 环境下工作,则必须从 source 构建它:

    1. 安装空间索引

      curl -L https://github.com/libspatialindex/libspatialindex/archive/1.8.5.tar.gz | tar xz
      cd libspatialindex-1.8.5/
      ./autogen.sh
      ./configure
      make
      sudo make install
      sudo ldconfig
      
    1. 安装rtree:pip install rtree

    【讨论】:

    • 这在我的 Mac 上为我工作,过了一段时间,试图找到解决方案(包括在 rtree 中编辑 core.py 文件)我非常感激。我 conda 安装了 geopandas,pip 安装了 osmnx,brew 安装了 spatialindex,pip 卸载了 rtree,然后 pip 安装了 rtree,它工作了。
    • 遗漏了一步:需要先运行./autogen.sh,然后才能运行./configure
    【解决方案4】:

    用户 DYZ 在 cmets 中提供了正确答案。

    您需要安装spatialindex

    此问题应设置为已回答,以免误导

    【讨论】:

      猜你喜欢
      • 2018-08-30
      • 2020-12-23
      • 2021-11-24
      • 2020-04-24
      • 2017-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多