Anaconda 環境に独自にモジュールを追加する
背景
データの分析とかする目的で Python を使う人が多くなってきました。
そのための環境を簡単に作るためのソフトウェアとして Anaconda なるものが有名になりつつあるので使ってみたのですが、オリジナルのモジュールに pyper が含まれてなくて、追加でインストールしようとしたら迷ったので、解決方法のメモ。
Anaconda のインストール
Anaconda のインストールは、各 OS ごとにインストールパッケージが提供されているので、それをそのままインストールする。今回は MacOSX 64bit 用で。
Anaconda のモジュールのインストール場所
Anaconda をインストールすると、OS にもともとインストールされていた python とは異なる場所に、Python 環境がまるまる一式インストールされる。
具体的には、
1. OS もともとの環境
インストールパス:/Library/Python/バージョン/
モジュールのインストール場所:主に /Library/Python/バージョン/site-packages/
2. Anaconda の python の環境
インストールパス:~/anaconda/lib/ ※ python インタプリタは ~/anaconda/bin/python
モジュールのインストール場所:~/anaconda/lib/python3.5/site-packages
で、普通に OS の環境で pip install とか brew とかでインストールしても、1. のデフォルト環境にインストールされて、2. のAnaconda 環境にはインストールされない。
Anaconda にモジュールインストール 解決方法
Anaconda にモジュールをインストールするときは、conda というツールでやるらしい。
まず anaconda search でインストールするモジュール名を探す
今回の場合は、pyper なので、
anaconda search -t conda pyper
を実行。すると、可能性のあるパッケージが次のようにリストアップされるので、
~ % anaconda search -t conda pyper
Using anaconda-server api site https://api.anaconda.org
Run 'anaconda show <USER/PACKAGE>' to get more details:
Packages:
Name | Version | Package Types | Platforms
------------------------- | ------ | --------------- | ---------------
alemack/pyperclip | 1.5.9 | conda | win-64
: A cross-platform clipboard module for Python. (only handles plain text for now)
auto/epyper | 0.1.0 | conda | linux-64
: https://github.com/mnowotka/epyper
auto/pyper | 1.1.1 | conda | linux-64
: http://www.webarray.org/softwares/PypeR
auto/pyperclip | 1.3 | conda | linux-64
: http://coffeeghost.net/2010/10/09/pyperclip-a-cross-platform-clipboard-module-for-python/
auto/pypercube | 0.1.3 | conda | linux-64
: https://github.com/sbuss/pypercube
auto/pyperry | 1.2.11 | conda | linux-64
: http://github.com/tpett/pyperry
marciorf/pyperclip | 1.5.11 | conda | win-64
: A cross-platform clipboard module for Python. (only handles plain text for now)
Found 7 packages
で、この中の auto/pyper をインストールしてみる。
パッケージを conda でインストールする
anaconda search -t conda pyper の実行結果にもあるように、詳しい情報確認のために anaconda show <USER/PACKAGE> を実行する。今の場合、
anaconda show auto/pyper
すると次のように表示されるので、
~ % anaconda show auto/pyper
Using anaconda-server api site https://api.anaconda.org
Name: pyper
Summary: http://www.webarray.org/softwares/PypeR
Access: public
Package Types: conda
Versions:
+ 1.1.1
To install this package with conda run:
conda install --channel https://conda.anaconda.org/auto pyper
最後にあるコマンドを実行する。
~% conda install --channel https://conda.anaconda.org/auto pyper
・・・ところが次のようなエラーが。
~ % conda install --channel https://conda.anaconda.org/auto pyper
Fetching package metadata: ......
Error: No packages found in current osx-64 channels matching: pyper
osx-64 環境の「チャネル」には pyper は無いからインストールできない、ということらしい。
解決方法:pip で別途インストールする
conda install でインストールできるパッケージは決まっている。非 conda パッケージのライブラリをインストールするときは、ターゲットとなる環境を activate してから、pip でインストールする。
~ % source activate YOUR_CONDA_ENV // YOUR_CONDA_ENV のところは適宜変えてください。デフォルトだと root
~ % pip install pyper
Anaconda とモジュールについてはこちらの記事もどうぞ
Anaconda の環境を作る conda create 時によく得るエラーの対応方法
流行りの Google 製 人工知能 ( 機械学習 用というべきか?)ライブラリ TensorFlow を Anaconda 環境にインストールした時のログはこちら
同じく、Anaconda に TensorFlow をインストールだが、ソースからビルドするパターン
Anaconda 環境とも併用可能な データサイエンティスト向け開発環境 Rodeo の使用レビュー。RStudio に一番近いので R使いの方には向けのツールだと思います。
Anaconda 環境に独自にモジュールを追加する 参考サイト
この辺を参考にしました: