前提・実現したいこと
プログラミング初心者です。Python notebookを使用してDecisonTreeClassifierとexport_graphvizで決定木モデルの可視化を行いたいと考えています。その途中の訓練データをモデルに代入する際に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
ValueError Traceback (most recent call last)
<ipython-input-14-5846f1a89c94> in <module>
1 # 訓練データをモデルに代入し学習
----> 2 clf3.fit(x_train_val,y_train_val)
~\Anaconda3\lib\site-packages\sklearn\tree_classes.py in fit(self, X, y, sample_weight, check_input, X_idx_sorted)
875 sample_weight=sample_weight,
876 check_input=check_input,
--> 877 X_idx_sorted=X_idx_sorted)
878 return self
879
~\Anaconda3\lib\site-packages\sklearn\tree_classes.py in fit(self, X, y, sample_weight, check_input, X_idx_sorted)
171
172 if is_classification:
--> 173 check_classification_targets(y)
174 y = np.copy(y)
175
~\Anaconda3\lib\site-packages\sklearn\utils\multiclass.py in check_classification_targets(y)
167 if y_type not in ['binary', 'multiclass', 'multiclass-multioutput',
168 'multilabel-indicator', 'multilabel-sequences']:
--> 169 raise ValueError("Unknown label type: %r" % y_type)
170
171
ValueError: Unknown label type: 'continuous'
該当のソースコード
Python notebook
import pandas as pd
import numpy as np
from sklearn.tree import DecisionTreeClassifier
df=pd.read_excel("1.xlsx")
出力変数を抜き出します
y=df["A"]
出力変数を抜き出します
x=df.iloc[:,1:-1]
訓練データと検証データに分割します
from sklearn.model_selection import train_test_split
x_train_val,x_test,y_train_val,y_test=train_test_split(x,y,test_size=0.1,random_state=1)
max_depth=3で決定木モデルの作成
clf3=DecisionTreeClassifier(max_depth=3,min_samples_leaf=100)
訓練データをモデルに代入し学習
clf3.fit(x_train_val,y_train_val)
質問の内容
上のコードで、fitする際にエラーメッセージが表示されてしまいます。
できる限り調べたのですが、原因がわかりません。
どなたかご教示いただけますでしょうか。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。