2016-10-03 22 views
0

以下はscikitでDecisionTreeClassifierを呼び出す私のコードの後半ですが、このエラーが発生します:Y_pred = DecisionTreeClassifier.predict(x_test) TypeError:predict()missing 1は必要な位置引数: 'X'。私は明らかにxを呼び出すので、なぜこのエラーメッセージが出るのか理解できません。scikitでDecisionTreeClassifierを呼び出すときにエラーメッセージが表示される

model = DecisionTreeClassifier(min_samples_leaf=100) 

model.fit(x_train,y_train) 

scores = cross_val_score(model, x_train,y_train, cv=10) 
print('mean: {:.3f} (std: {:.3f})'.format(scores.mean(), scores.std()), end='\n\n') 

#make prediction 
Y_pred = DecisionTreeClassifier.predict(x_test) 

acc_train = accuracy_score(train[y_train],Y_pred) 
print ('Train Accuracy: %f'%acc_train) 

答えて

2

DecisionTreeClassifierはクラスです。これを使用するには、クラスインスタンスをインスタンス化する必要があります。あなたのコードの最初の行にこれを行いました:model = DecisionTreeClassifier(min_samples_leaf=100)。さて、あなたは、このインスタンスを使用する必要があります(つまりmodel)、あなたはトレーニングデータ上で訓練を受けた、予測のために:確かに

Y_pred = model.predict(x_test) 
+0

、おかげ – Bolajio

+1

たくさんOPが何をしたか説明することは価値があると、それはしませんでした理由(彼は明らかに経験豊富なPython開発者ではないので)解析のエラーを起こして、人々がこの種の間違いを避けるようにします。 – lejlot

関連する問題