2016-11-20 14 views
36

私はtrain_test_split機能を使用して記述しようとしていますか?そして克服する方法は?はImportError:</p> <pre><code>from sklearn.model_selection import train_test_split </code></pre> <p>、これは</p> <pre><code>ImportError: No module named model_selection </code></pre> <p>理由の原因:いいえモジュールの名前model_selection

+0

model_selection(明らかに)という名前のモジュールが存在しないため、十分にエラーが示しています。それが存在すると確信していれば、たぶん大文字小文字の誤りでしょうか? –

+1

少なくとも私の最後の10の質問では答えを受け入れていないということが私に起こりました。最も役立つ答えを受け入れることは、回答者や将来あなたの質問を見ている人々に役立つことを覚えておいてください。 – linusg

答えて

71

を作品sklearnをインストールした後、私はあなたがscikit-learnの間違ったバージョンを持っていると思い、同様の状況がhere on GitHubを説明しました。以前(v0.18前)、train_test_splitcross_validationモジュールに位置していた:

from sklearn.cross_validation import train_test_split 

しかし、今ではmodel_selectionモジュールにあります:

from sklearn.model_selection import train_test_split 

は、あなたが最新バージョンが必要です。

少なくともバージョン0.18にアップグレードするには、実行します。

pip install -U scikit-learn 

(あるいはpip3、パイソンのバージョンによって異なります)。別の方法でインストールした場合は、たとえばAnacondaを使用している場合など、別の更新方法を使用していることを確認してください。

+0

これは私のためには機能しませんでしたが、Farhard Malekiのソリューション "condit update scikit-learn"は役に立ちました。 –

+0

@AlexKinman確かに、インストール方法によって異なります。あなたのケースでconda: – linusg

+0

私はあなたが与えたピップコマンドを実行し、それはピップをアップグレードするように私に求めるエラーをスローするでしょう。その後、私はpipとreranをアップグレードし、Sklearnをアップグレードする必要はないと言います。私はすでに最新バージョン(0.17)を持っていても、帽子はそうではないと思っていました。大声で話をしたり、情報を共有しようとするだけではありません。 –

2

は、あなたがsklearnがありますか? ない場合は、次の操作を行います。

sudo pip install sklearn 

from sklearn.model_selection import train_test_split 

が細かい

1

@linusgから前の回答にいくつかの情報の追加:

sklearnは、そのすべての変更のリリース履歴を保持します。それを時々チェックすることを考えてください。 Hereはドキュメントへのリンクです。

バージョン0.18のドキュメントにあるように、model_selectionという新しいモジュールが作成されました。したがって、以前のバージョンでは存在しませんでした。

更新sklearn、それが動作します!

6

私はGridSearchCVをインポートするとき、私は、この問題が発生しました。

ただsklearn.grid_searchsklearn.model_selectionを変更しました。@linusgが言ったように

+0

<3神の祝福:) – AsheKetchum

1

、ちょうどクロスバリデーションをインポートされた1つのオプションは、次のように関係なく、私は更新され、何Jupyterノートブックを使用していないながら

from sklearn import cross_validation 
X_train,X_test,y_train,y_test = cross_validation.train_test_split(X,y,test_size=0.3) 
14

更新sklearn

conda update scikit-learn

+2

これはうまくいきました。ありがとう –

4

が、私は同じ問題を抱えていましたPythonの3、conda、私はJupyterに得ることができませんでした:

import sklearn 
print (sklearn.__version__) 
0.17.1 

scikit-学ぶ - 0.1ショーに8.1

最後に、Anaconda3とJupiter Notebookを削除し、新しく再インストールしました。私はそれを働かせました。

http://ukitech.blogspot.com/2017/02/sklearnmodelselection.html

関連する問題