web-dev-qa-db-ja.com

ModuleNotFoundError:「sklearn.externals.six」という名前のモジュールはありません

紹介としてMLの紹介という本を手に入れ、自分の方法で取り組むと思った。 sklearn、numpy、mglearnなどの正しいモジュールをすべてインストールした後、データフレームを作成し、散布行列を作成しようとしました。何らかの理由でエラーModuleNotFoundError: No module named 'sklearn.externals.six'コーディングに慣れていないのですが、かなり新しいので、ある種の明らかな間違いを犯している可能性があります。私はまた、stackoverflowで同様の質問を既に探しましたが、それが役立つとは思われませんでした。私のコードは次のとおりです:

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
import pandas as pd
import mglearn
import numpy as np
from IPython.display import display
import matplotlib as pl
import sklearn

iris_dataset = load_iris()
X_train, X_test, y_train, y_test = train_test_split(iris_dataset['data'], iris_dataset['target'], random_state=0)
iris_dataframe = pd.DataFrame(X_train, columns=iris_dataset.feature_names)
pd.plotting.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15), marker='o', hist_kwds={'bins':20}, s=60, alpha=.8, cmap=mglearn.cm3)

Atom以外でコードを記述する必要がありますか?インポートまたはインストールしていないモジュールはありますか?

1
Fred Cozzi

Scikit-learnバージョンをダウングレードします。以下のコードを参照してください。

Jupyterノートブックで試してください:!pip install --upgrade scikit-learn == 0.20.3

またはターミナル:pip install --upgrade scikit-learn == 0.20.3

その後、あなたはsklearn.external.sixを認識するコード

0
Vigo Borges