Search code examples
pythonanacondafolium

'Conda list' shows folium is installed, but cannot "import folium" (anaconda x64)


I have installed folium using command 'conda install -c ioos folium=0.2.0'

It looks to have installed correctly, and it showing on 'conda list' results.

When I run python from cmdline, then attempt an import of folium, i get the following error:

>>>import folium
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'folium'

Any ideas about how to fix this?


Solution

  • I had the same issue. If you are using Anaconda:

    When you install using conda install -c conda-forge folium, the package will be placed in:

    ./anaconda3/envs/[name env]/lib/python3.7/site-packages/folium
    

    When you install using pip (with an anaconda env activated), pip install folium, the package will be placed in:

    ./anaconda3/lib/python3.7/site-packages/folium
    

    Python uses first the sites-packages as the target directory of manually built Python packages. When you build and install Python packages from source (using distutils, probably by executing python setup.py install), you will find the installed modules in site-packages by default.

    In this case you have two places: /anaconda3/lib/python3.7/site-packages/ and /anaconda3/envs/[name env]/lib/python3.7/site-packages/.

    First the modules will be available as default in /anaconda3/lib/python3.7/site-packages/. Sometimes (and I really don't know why) the modules inside sites-packages conda env are not available to import automatically without export the PATH.

    So, to solve this issue, you have 2 options:

    • Installing using pip install folium and import folium (don't need install by conda install), or

    • After conda install <package>, run conda init, close the terminal and open a new one. Then, try to import again.

    Here are some tips about how to use pip in a conda-environment.