Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error in importing geopandas

I am getting the following error when importing

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

I have installed geoPandas using anaconda however when I am trying to run it is displaying me the above error. When running

conda list

I am getting

enter image description here

After the runnning of the following:

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

I am getting

---------------------------------------------------------------------------
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
like image 742
Arshad Avatar asked Mar 12 '17 15:03

Arshad


People also ask

How do I install GeoPandas in Python?

To install GeoPandas and all its dependencies, we recommend to use the conda package manager. This can be obtained by installing the Anaconda Distribution (a free Python distribution for data science), or through miniconda (minimal distribution only containing Python and the conda package manager).


1 Answers

The problem is caused by incompatibility of the fiona's and gdal's dependencies. Uninstall geopandas via conda. It will uninstall fiona as well. Do conda uninstall geopandas; Do conda install fiona=1.6

Do conda search fiona before hand and see if it is available for your version of python. If not, create new environment for that version of python.(Ex. create -n py35 python=3.5 anaconda)

Then pip install geopandas

Finally, try to import geopandas and see if you still get the error.

like image 124
Anastasia Clark Avatar answered Oct 25 '22 18:10

Anastasia Clark