scikit-learnのユーザーガイドに従って、pip install -U scikit-learn
を使用してscikit-learnをインストールしました。
そこで、pip search scikit-learn
を使用すると、次のような検索結果が得られます。
scikit-learn - A set of python modules for machine learning and data mining
INSTALLED: 0.12.1 (latest)
しかし、Pythonに入り、sklearn
をインポートしようとすると、ImportError:No module named sklearn
と表示されます。これは本当にただ動くはずなのです。
私はEnthought'のPythonの無料配布(2.7.3)をMac OS 10.6.8 と NumPy 1.6.1 と SciPy 0.10.1 上で使っています。EPD Freeにはscikit-learnが付属していることは知っていますが、scikit-learnを実際に使用できるようにpipは私のバージョンをアップグレードする必要がありました。
同じ問題を得た、@Alanは正しい解決策を与えたが、難しい方法。 ここでは、問題を解決するための簡単な手順は、私が同じための手順を与えて、Mac OSXにしています。
Ameys-Mac-mini:~ amey$ python --version
Python 2.7.2
Ameys-Mac-mini:~ amey$ cd /Library/Python/2.7/site-packages/
Ameys-Mac-mini:site-packages amey$ brew install gcc
Ameys-Mac-mini:site-packages amey$ sudo pip install -t . numpy scipy scikit-learn
皆さん、ありがとうございます!(質問の下のコメントスレッドをご覧ください。)私のMac'の /Library/Frameworks/Python.framework ディレクトリツリーの下に2つのバージョンのPythonがあることが判明しました。2.7 (OSXに付属) と 7.3 (EPD Freeでインストール)です。
7.3の下に置きたかったのに、pip
がscikit-learnを2.7の下に置いていたことが判明しました。
ディレクトリを目的のバージョンの Python の site-packages に変更し、pip install -t .{パッケージ名}
を実行すれば、パッケージ名を希望のバージョンのPythonにインストールできます。
私の場合、Pythonエクステンションは、すべて以下の場所にインストールされています。
/Library/Python/2.7/site-packages/
公式サイトで紹介されているコマンドを使用すると
pip install -U numpy scipy scikit-learn
を実行すると、scikit-learn パッケージが実際にインストールされ、私の
/usr/local/lib/python2.7/site-packages
そこで、2番目のディレクトリにあるパッケージをすべて1番目のディレクトリにコピーすると、sklearn パッケージをインポートできるようになります。