Матрица путаницы в SkLearn показывает ошибку - PullRequest
0 голосов
/ 28 февраля 2020

Я пытаюсь построить путаницу для моей модели классификации с учетом набора данных радужной оболочки. Тем не менее, я продолжаю получать ошибку. Я надеюсь, что кто-то может помочь. Спасибо

import numpy as np
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn import tree
from sklearn import metrics
from sklearn.metrics import confusion_matrix

def train_and_predict(train_input_features, train_outputs, prediction_features):
    classifier=tree.DecisionTreeClassifier()
    classifier.fit(train_input_features,train_outputs)
    predictions=classifier.predict(prediction_features)


iris = datasets.load_iris()
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target,test_size=0.3, random_state=0)

y_pred = train_and_predict(X_train, y_train, X_test)
print(confusion_matrix(y_test, predictions))

OUT: NameError: имя 'предсказания' не определено

1 Ответ

0 голосов
/ 28 февраля 2020

Я обнаружил, что мне нужно вставить код в функцию, например:

def train_and_predict(train_input_features, train_outputs, prediction_features):
    classifier=tree.DecisionTreeClassifier()
    classifier.fit(train_input_features,train_outputs)
    predictions=classifier.predict(prediction_features)
    print(predictions)
    print('Confusion matrix\n',confusion_matrix(y_test,classifier.predict(X_test)))
...