質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

678閲覧

matplotlib.pyplotの使い方

s_kj

総合スコア32

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2020/05/25 14:27

プログラミング初学者です。
「pythonで始める機械学習」というオライリーから出版されている著書を学習しています。

1つ目のコードは正常に作動したのですが、2つ目のコードは、「SyntaxError: invalid syntax」となり作動しません。
原因は、matplotlib.pyplotにあるのではないかと考えているのですが、正しいでしょうか。
ご回答のほどよろしくお願いいたします。

コード1

import mglearn import matplotlib.pyplot as plt #データセットの作成 X, y = mglearn.datasets.make_forge() #データセットをプロット mglearn.discrete_scatter(X[:,0], X[:,1], y) plt.legend(["Class 0", 'Class 1'], loc = 4) plt.xlabel('First feature') plt.ylabel('Second feature') print("X.shape: {}".format(X.shape)) X, y = mglearn.datasets.make_wave(n_samples=40) plt.plot(X, y, 'o') plt.ylim(-3, 3) plt.xlabel('Feature') plt.ylabel('Target') plt.show()

コード2

import mglearn import matplotlib.pyplot as plt from sklearn.datasets import loas_breast_cancer cancer = load_breast_cancer() X_train, X_test, y_train, y_test = train_test_split( cancer.data, cancer.target, strratify=cancer.target, rondom_state=66) training_accuracy = [] test_accuracy = [] neighbors_setting = range(1,11) for n_neighbors in neighbors_settings: clf = KNeighborsClassifier(n_neighbors=n_neighbors) clf.fit(X_train, y_train) training_accuracy.append(clf.score(X_train, y_train)) test_accuracy.append(clf.score(X_test, y_test) plt.plot(neighbors_setting, training_accuracy, label = "training accuracy") plt.plot(neighbors_setting, teat_accuracy, label = "test accuracy") plt.ylabel("Accuracy") plt.ylabel("n_neighbors") plt.legend() plt.show()

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

エラーが発生している行の1つ前の行で閉じ括弧 ) が抜けています。
構文エラーが出た場合は指摘されている行だけでなく、その前の行もチェックするといいでしょう。

diff

1- training_accuracy.append(clf.score(X_train, y_train) 2+ training_accuracy.append(clf.score(X_train, y_train))

ちなみに上記以外にスペルミスなどが5箇所ぐらいあり、エラーになりました。
スペルミスしないように英単語の意味を考えながら、コピペしましょう。

修正後のコード

python

1import mglearn 2import matplotlib.pyplot as plt 3 4from sklearn.datasets import load_breast_cancer 5from sklearn.model_selection import train_test_split 6from sklearn.neighbors import KNeighborsClassifier 7 8cancer = load_breast_cancer() 9X_train, X_test, y_train, y_test = train_test_split( 10 cancer.data, cancer.target, stratify=cancer.target, random_state=66 11) 12training_accuracy = [] 13test_accuracy = [] 14neighbors_setting = range(1, 11) 15for n_neighbors in neighbors_setting: 16 clf = KNeighborsClassifier(n_neighbors=n_neighbors) 17 clf.fit(X_train, y_train) 18 training_accuracy.append(clf.score(X_train, y_train)) 19 test_accuracy.append(clf.score(X_test, y_test)) 20 21plt.plot(neighbors_setting, training_accuracy, label="training accuracy") 22plt.plot(neighbors_setting, test_accuracy, label="test accuracy") 23plt.ylabel("Accuracy") 24plt.ylabel("n_neighbors") 25plt.legend() 26 27plt.show()

投稿2020/05/25 14:38

tiitoi

総合スコア21956

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

s_kj

2020/05/25 14:41

tiitoiさん ご回答ありがとうございます。 ・構文エラーの際は、事前の内容も確認するようにします。 ・スペルミス失礼いたしました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問