导入geopandas时出错

时间:2017-03-12 15:28:47

标签: python anaconda geopandas

导入

时出现以下错误
import geopandas as gpd

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last) 
<ipython-input-3-f8b81fe8ca07> in <module>()
----> 1 import geopandas as gpd

//anaconda/lib/python2.7/site-packages/geopandas/__init__.py in <module>()
  2 from geopandas.geodataframe import GeoDataFrame
  3 
----> 4 from geopandas.io.file import read_file
  5 from geopandas.io.sql import read_postgis
  6 from geopandas.tools import sjoin

//anaconda/lib/python2.7/site-packages/geopandas/io/file.py in <module>()
  1 import os
  2 
----> 3 import fiona
  4 import numpy as np
  5 from shapely.geometry import mapping

//anaconda/lib/python2.7/site-packages/fiona/__init__.py in <module>()
 67 from six import string_types
 68 
---> 69 from fiona.collection import Collection, BytesCollection, vsi_path
 70 from fiona._drivers import driver_count, GDALEnv
 71 from fiona.drvsupport import supported_drivers

 //anaconda/lib/python2.7/site-packages/fiona/collection.py in <module>()
  6 import warnings
  7 
----> 8 from fiona import compat
  9 from fiona.ogrext import Iterator, ItemsIterator, KeysIterator
 10 from fiona.ogrext import Session, WritingSession

ImportError: cannot import name compat

我已经使用anaconda安装了geoPandas但是当我尝试运行它时显示上面的错误。运行时

conda list

我正在

enter image description here

以下运行之后:

conda install -c conda-forge fiona shapely pyproj rtree
conda install pandas
conda install -c conda-forge geopandas

我正在

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-2-f8b81fe8ca07> in <module>()
----> 1 import geopandas as gpd

//anaconda/lib/python2.7/site-packages/geopandas/__init__.pyc in <module>()
  2 from geopandas.geodataframe import GeoDataFrame
  3 
----> 4 from geopandas.io.file import read_file
  5 from geopandas.io.sql import read_postgis
  6 from geopandas.tools import sjoin

//anaconda/lib/python2.7/site-packages/geopandas/io/file.py in <module>()
  1 import os
  2 
----> 3 import fiona
  4 import numpy as np
  5 from shapely.geometry import mapping

//anaconda/lib/python2.7/site-packages/fiona/__init__.py in <module>()
 67 from six import string_types
 68 
---> 69 from fiona.collection import Collection, BytesCollection, vsi_path
 70 from fiona._drivers import driver_count, GDALEnv
 71 from fiona.drvsupport import supported_drivers

//anaconda/lib/python2.7/site-packages/fiona/collection.py in <module>()
  7 
  8 from fiona import compat
----> 9 from fiona.ogrext import Iterator, ItemsIterator, KeysIterator
 10 from fiona.ogrext import Session, WritingSession
 11 from fiona.ogrext import (

ImportError: dlopen(//anaconda/lib/python2.7/site-packages/fiona/ogrext.so,       

2): Library not loaded: @rpath/libnetcdf.11.dylib
  Referenced from: //anaconda/lib/libgdal.20.dylib
  Reason: Incompatible library version: libgdal.20.dylib requires version    

  12.0.0 or later, but libnetcdf.11.dylib provides version 11.0.0

2 个答案:

答案 0 :(得分:7)

问题是由于fiona和gdal的依赖性不兼容造成的。通过conda卸载geopandas。它也将卸载fiona。 做conda uninstall geopandas; 做conda install fiona=1.6

事先做conda search fiona并查看它是否适用于您的python版本。如果没有,请为该版本的python创建新环境。(例如create -n py35 python=3.5 anaconda

然后pip install geopandas

最后,尝试import geopandas并查看是否仍然出现错误。

答案 1 :(得分:0)

我在MacOs Mojave 10.14中遇到了同样的问题。我发现解决方案是通过pip来安装geopandas,而不是使用conda

pip install geopandas