Accuracy_score отображается неправильно - PullRequest
0 голосов
/ 30 октября 2019

Вот код:

from sklearn.metrics import accuracy_score
print('Accuracy: ' + str(int(accuracy_score(y_pred, y_test))))

результат:

Accuracy: 0

и здесь переменные:

>>> y_pred
array([36, 36], dtype=int64)

>>> y_test
0    24
4    36
Name: Age, dtype: int64

Как вы можете видеть 36это правильный прогноз. Почему точность не 0.50 тогда?

Ответы [ 3 ]

3 голосов
/ 30 октября 2019

Попробуй без int и он даст 0.5. Это потому, что, помещая int, вы не можете вернуть float как 0.5.

1 голос
/ 30 октября 2019

не разбирать его на целое число.

from sklearn.metrics import accuracy_score
print('Accuracy: ' + str(accuracy_score(y_pred, y_test)))
0 голосов
/ 30 октября 2019

Должен быть другой тип данных, который вы передаете в precision_score. Я думаю, что вы передаете y_pred как массив numpy и y_test как объект pandas. пожалуйста, используйте .values для получения массива numy из pandas dataframe

accuracy_score(y_test.values,y_pred)

Примечание : Согласно sklearn документация использование precision_score похоже на precision_score (y_true, y_pred)

...