GeoPandas
地理的情報を扱えるPythonモジュール。
インストール
Windowsではインストールが失敗しがち。
というのも、GeoPandas ← Fiona ← GDAL というモジュールの依存関係があり、FionaとGDALはpipだとバイナリ(whl)でなくローカルでビルドしてインストールしようとする。
Pythonは基本的にLinux向けなので、特にビルド絡みではエラーが発生しやすい。
こんなエラーが出た Complete output (1 lines): A GDAL API version must be specified. Provide a path to gdal-config using a GDAL_CONFIG environment variable or use a GDAL_VERSION environment variable.
さらに、GDALモジュールは、(pythonのモジュールでない)アプリケーションのGDALが先にインストールされていることを前提としている?
(よくわかっていないが、その手順でのインストールの事例が紹介されているサイトがある)
-
- GDALアプリケーション配布元
方法は主に、
- ビルド環境を整えた上で、GDALアプリケーションをインストールしてパスを通し、pipからインストール
- ○pipで、GeoPandasをはじめとした各種モジュールのバージョンを管理できる
- ×面倒
- バイナリを提供してくれているgohlke氏のサイトに頼る
- ○楽
- ○GDALアプリケーションも、GDALのwheelに同梱されている
- ×各モジュールのバージョンアップはインストールともう一度同じ手順を踏む必要がある
- AnaCondaを使う
- condaのモジュール管理ツールではバイナリ提供されている
まぁ、2番目か3番目でいいと思う。
以下は2番目の方法について記述している。
手順
- 解説記事
各モジュールは、自身の環境のPythonバージョンと、OSが32bitか64bitかを確認した上で、合致するものを選ぶ。
- GDAL
- インストール
python -m pip install path/to/GDAL-3.1.4-cp38-cp38-win_amd64.whl
- Fiona
- インストール
python -m pip install path/to/Fiona-1.8.18-cp38-cp38-win_amd64.whl
- GeoPandas
- これはpipからインストール
python -m pip install geopandas
これで通るはず。
それでもエラーが出る
Fionaのインストール中にエラーが出た場合。
Installing collected packages: gdal, attrs, Fiona Attempting uninstall: gdal Found existing installation: gdal 3.2.1 Uninstalling gdal-3.2.1: Successfully uninstalled gdal-3.2.1 Running setup.py install for gdal ... error ERROR: Command errored out with exit status 1: ...
大体の場合、GDALとFionaは各最新バージョンを選べばよいが、タイミングによってはバージョンが合わない場合がある。
上のようなログが出た場合、Fionaはインストール中に既存のGDALをアンインストールし、自身が対応するバージョンのGDALをビルドで入れようとしている。
- ログをよく読み、FionaがインストールしようとしているバージョンのGDALを特定する
- もういちどgohlke氏のサイトから、バージョンのあったGDALのwheelをダウンロードする
- 既存のGDALはアンインストールしておく(上記でアンインストールを試みられているが、失敗したのでロールバックされている)
- GDAL→Fionaの順にインストールする
これで、解決する、かも。