How to find out the accuracy?

Andrew 76868 picture Andrew 76868 · Feb 26, 2017 · Viewed 29.3k times · Source

I've wondered if there is a function in sklearn which corresponds to the accuracy(difference between actual and predicted data) and how to print it out?

from sklearn import datasets 
iris = datasets.load_iris()
from sklearn.naive_bayes import GaussianNB
naive_classifier= GaussianNB()
y =naive_classifier.fit(iris.data, iris.target).predict(iris.data)
pr=naive_classifier.predict(iris.data)

Answer

Vivek Kumar picture Vivek Kumar · Feb 26, 2017

Most classifiers in scikit have an inbuilt score() function, in which you can input your X_test and y_test and it will output the appropriate metric for that estimator. For classification estimators it is mostly 'mean accuracy'.

Also sklearn.metrics have many functions available which will output different metrics like accuracy, precision, recall etc.

For your specific question you need accuracy_score

from sklearn.metrics import accuracy_score
score = accuracy_score(iris.target, pr)