前提
機械学習を用いて領域分類した結果を可視化するプログラムを書いています。
https://qiita.com/Yatsupon/items/ec5d1003a2a108534128
上記のページを参考に少し手を加えて書いているのですが、グラフを出力する段階でエラーが出てしまいます。
何がご教授いただければ幸いです。
実現したいこと
・plot_decision_regionsを使い、データ分類のグラフを出力する
発生している問題・エラーメッセージ
plot_decision_regions( x_combined, y, clf=model)と書いている行で can only concatenate str (not "int") to str というエラーが出ています。
該当のソースコード
python
1import numpy as np 2import pandas as pd 3import seaborn as sns 4sns.set_style("whitegrid") 5import matplotlib.pyplot as plt 6%matplotlib inline 7from sklearn.model_selection import train_test_split, cross_validate 8 9df = pd.read_csv("iris.csv") 10df.head() 11 12X = df.loc[:, ["SepalLength","SepalWidth","PetalLength","PetalWidth"]] 13y = df.loc[:, "Name"] 14 15 16X_train, X_test, y_train, y_test = train_test_split(X, y) 17model = svm.SVC() 18model.fit(X_train,y_train) 19X_train.shape, X_test.shape 20 21#data_train = pd.DataFrame(X_train) 22#data_train["Name"] = y_train 23 24#sns.pairplot(data_train, hue='Name', palette="husl") 25 26#X_train = data_train[["SepalLength","SepalWidth","PetalLength","PetalWidth"]].values 27#y_train = data_train["Name"].values 28 29 30pre = model.predict(X_test) 31 32ac_score = metrics.accuracy_score(y_test,pre) 33print("正解率=", ac_score) 34 35 36 37#ここからデータ可視化 38import matplotlib.pyplot as plt 39from mlxtend.plotting import plot_decision_regions 40%matplotlib inline 41 42x_combined = X_train.iloc[:, [0,1]].values 43y_combined = y_train.values 44 45 46d = {'Iris-setosa':0, 'Iris-versicolor':1, 'Iris-virginica':2} 47y = np.array(list(map(lambda i : d[i], y_combined))) 48 49model.fit(x_combined, y) 50 51print(np.unique(np.array(y))) 52 53fig = plt.figure(figsize=(13,8)) 54plot_decision_regions( x_combined, y, clf=model) 55plt.show()
試したこと
他のサイトにあるグラフを出力するプログラムも同じエラーが出ました。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。

回答1件
あなたの回答
tips
プレビュー