scikit-learn Webサイトに記載されているアクションは、EPDのscikit-learnバージョンに関係なく機能します。PYTHONPATH
Pythonは、環境変数に設定されたscikit-learnバージョンを自動的に使用します。これは、scikit-learnのGitバージョンのディレクトリパスに設定する必要があります。
UnixライクなシステムでBashを使用する場合は、次のことを行う必要があります。
- scikit-learnの最新コードをインストールするためのアクションを実行します(この例では、クローンを作成しました
/home/yourname/bin/scikit-learn
)
- 次の行を編集
.bashrc
して追加します。export PYTHONPATH="/home/yourname/bin/scikit-learn";
- 新しいターミナルを開き、次のように入力してインタラクティブモードでPythonを起動します
python
- タイプ:
import sklearn
- タイプ:
sklearn.__verion__
これは、'0.12-git'
の代わりに表示されるはずです0.11
なぜこれが機能するのですか?Pythonは、変数sys.path
(list
パスのa)を内部的に使用して、モジュールとパッケージを探す必要があるすべてのディレクトリを追跡します。モジュールまたはパッケージが要求されると、Pythonは一致するものが見つかるまでこのリストを順番に調べます。したがって、たとえば、モジュールはに複数回リストできますがsys.path
、リストの最初に表示されたバージョンのみが使用されます。
すべてのPythonインストールには、にリストされている独自のデフォルトのパスセットがありますsys.path
。拡張する1つの方法は、にsys.path
パスをリストすることPYTHONPATH
です。Pythonが起動すると、この環境変数が読み取られ、sys.path
リストの先頭に追加されます。したがって、別のバージョンのscikit-learnへのパスをPYTHONPATH
then(EPD)に追加すると、Pythonは最初にそのバージョンのscikit-learnを見つけて、でさらにリストされているバージョンの代わりにそれを使用しsys.path
ます。
表示するsys.path
には、単純import sys
に、次にprint sys.path
。また、たとえば、1つのPythonプログラムで0.12バージョンのscikit-learnのみを使用し、他のすべてのPythonプログラムでデフォルトとして0.11バージョンを使用する場合は、PYTHONPATH
空のままにして、scikit-learn0.12へのパスのみを手動で挿入できます。コードの上部:
import sys
sys.path.insert(0, '/home/yourname/bin/scikit-learn')
import sklearn