如何成功安装Pyproj和Geopandas?

39

我尝试通过运行!pip install geopandas在I Python中安装geopandas,但是这失败了,报错为“python setup.py egg_info”失败,然后是路径过长的目录。我在线阅读到需要pyproj来安装geopandas,尝试安装了它,但是还是没有成功,出现类似的错误。请问有人能指点我正确的方向吗?谢谢。

顺便说一下,如果有帮助的话,我可以使用这种方法安装shapely,fiona和Descartes。


什么平台(Linux/Windows/Mac)?您能使用conda安装它吗? - joris
嗨,我在Windows和Mac上都尝试过,但都没有成功。关于使用conda,您是指使用conda install命令吗? - user3144095
3
是的,我指的是conda软件包管理器:http://conda.pydata.org/docs/index.html。使用它,您可以从ioos频道安装它(`conda install -c ioos geopandas`)。 - joris
一个不需要conda的简单明了的Windows答案,请访问https://dev59.com/y7roa4cB1Zd3GeqPm5PU#61418519。 - keepAlive
17个回答

1
您可以使用以下命令安装依赖项,包括pyproj:
conda install pandas fiona shapely pyproj rtree descartes

要了解更多依赖项信息,请参考官方指南。 使用pip安装,请使用以下命令:
pip install geopandas

您也可以使用 conda 安装 geopandas

conda install geopandas

有时候通过conda安装的geopandas不是最新版本。要更新geopandas,请使用以下命令:

pip install geopandas --upgrade 

0
我正在2022年编写一个Docker化的应用程序,并希望避免添加conda构建依赖项(因为这会导致一个非常大的容器,需要很长时间来构建,只是为了运行一个单独的包!)。我找到的最直接的答案是将以下软件包添加到您的requirements.txt文件中:
numpy
pandas
shapely
fiona
six
cython
pyproj
geopandas

在容器中测试允许我远程读取一个shapefile并成功打印第一个条目。

# python3 test.py
STATEFP                                                      01
COUNTYFP                                                    061
COUNTYNS                                               00161556
AFFGEOID                                         0500000US01061
GEOID                                                     01061
NAME                                                     Geneva
NAMELSAD                                          Geneva County
STUSPS                                                       AL
STATE_NAME                                              Alabama
LSAD                                                         06
ALAND                                                1487908432
AWATER                                                 11567409
geometry      POLYGON ((-86.19347599999999 31.192213, -86.12...
Name: 0, dtype: object

如果只使用软件包名称而不带版本号进行安装,会得到以下软件包版本:

# pip3 freeze | egrep -i '(numpy|pandas|shapely|fiona|six|cython|pyproj|geopandas)'
Cython==0.29.26
Fiona==1.8.20
geopandas==0.10.2
numpy==1.22.1
pandas==1.3.5
pyproj==3.3.0
Shapely==1.8.0
six==1.16.0

采用这种方法将我的构建时间缩短到了44.2秒。
来源:geopandas github issue

这是conda容器(gpd-test)和Python容器之间的大小比较,因为我提到它是一个大容器,构建时间长。

$ docker image ls | egrep '(REPO|gpd)'
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
gpd-api      latest    55b0022c6aaf   4 hours ago   386MB
gpd-test     latest    5fc768d10a3a   4 weeks ago   3.2GB

0

我在运行着Python 3.9的Ubuntu 18.04.5上,使用pip成功安装了geopandas,并使以下版本的软件包配合工作。

pandas==1.3.5
numpy==1.21.5
Fiona==1.8.20
pyproj==3.3.0
rasterio==1.2.10
Shapely==1.8.0
geopandas==0.10.2

安装包可以使用以下命令:pip install <package==version>


0

我曾遇到过同样的问题(可能尚未完全解决),但我会告诉你我是如何做到的。我基本上做了很多人提到的相同事情,然后偶然发现了一些可行的东西。

涉及的步骤:

  1. 通过Anaconda Prompt命令“conda remove fiona”等删除以下软件包:fiona、gdal、pyproj、geoplot、rtree。
  2. 在Anaconda Prompt中安装geoplot:conda install geoplot -c conda-forge。

这个包括geopandas和所有它的依赖项(fiona、gdal、pyproj等)。我不确定这是否是一个终极解决方案,但对我起作用!如果这对您没有效果,我建议按照Vesanen的说明操作,因为那也对我有一段时间有效。我遇到的问题是,一旦我安装了geopandas,就无法安装geoplot软件包而不使Spyder崩溃。


0
问题(Windows 10 x64,Python 3.4+):
1.安装Visual C++ 2010 Express(下载)。 (不要安装Microsoft Visual Studio 2010 Service Pack 1)
2.从控制面板\程序和功能中删除所有Microsoft Visual C++ 2010可再发行包。 如果您不这样做,安装将因“安装期间致命错误”而失败。
然后:pip install pyproj

0
  1. 首先使用命令 pip install GDAL 安装GDAL wheel 文件。
    您可以在 这里 查看文档。
  2. 然后使用命令 conda install geopandas
    您可以在 这里 查看文档。

我使用Jupyter笔记本并且该方法适用于我。


0

我使用的是Windows 10,也遇到了geopandas的同样问题。

你可以尝试这个解决方案,但请记住,在安装geopandas之前,您还需要安装GDAL(与上面链接中的方法相同,通过.whl文件安装GDAL即可)。第一次它没有起作用,但当我重新安装fiona到1.8.6版本时就可以了(因为v.2+会出现错误)

我想安装geopandas,但在此之前我必须安装Fiona。这是我的解决方案:

  1. 这里下载二进制gdal。我选择了这个:release-1911-x64-gdal-2-4-4-mapserver-7-4-3

    1.1. 您需要下载1个zip文件:release-1911-x64-gdal-2-4-4-mapserver-7-4-3-libs.zip

    1.2. 将其解压到本地路径,例如"C:\\Users\\Jack\\Gdal"

  2. master下载Fiona。您可以立即下载zip

  3. 解压Fiona-master.zip,例如"C:\\Users\\Jack\\Fiona-master"

  4. 打开CMD,打开目录"Fiona-master":chdir "C:\\Users\\Jack\\Fiona-master"并运行此命令(使用您的路径):

    python setup.py build_ext -I"<PATH_TO_GDAL_INCLUDE_DIR>" -lgdal_i -L"<PATH_TO_GDAL_LIB_DIR>" install --gdalversion 2.1

    在我的情况下:

    python setup.py build_ext -I"C:\\Users\\Jack\\Gdal\\include" -lgdal_i -L"C:\\Users\\Vasilev_EN\\Downloads\\Gdal\\lib" install --gdalversion 2.1

  5. 我没有cython并且出现了错误,所以: pip install cython

  6. 再次尝试运行(4)中的长字符串

  7. 成功后:pip install geopandas正常工作


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接