How to generate classification report and confusion matrix in Python?
MODEL SELECTION DATA CLEANING PYTHON DATA MUNGING MACHINE LEARNING RECIPES PANDAS CHEATSHEET     ALL TAGS

How to generate classification report and confusion matrix in Python?

How to generate classification report and confusion matrix in Python?

This recipe helps you generate classification report and confusion matrix in Python

0

Recipe Objective

While using a classification problem we need to use various metrics like precision, recall, f1-score, support or others to check how efficient our model is working.

For this we need to compute there scores by classification report and confusion matrix. So in this recipie we will learn how to generate classification report and confusion matrix in Python.

This data science python source code does the following:
1. Imports necessary libraries and dataset from sklearn
2. performs train test split on the dataset
3. Applies DecisionTreeClassifier model for prediction
4. Prepares classification report for the output

Step 1 - Import the library

from sklearn import datasets from sklearn.tree import DecisionTreeClassifier from sklearn.model_selection import train_test_split from sklearn.metrics import classification_report, confusion_matrix

We have imported datasets to use the inbuilt dataframe , DecisionTreeClassifier, train_test_split, classification_report and confusion_matrix.

Step 2 - Setting up the Data

Here we have used datasets to load the inbuilt wine dataset and we have created objects X and y to store the data and the target value respectively. wine = datasets.load_wine() X = wine.data y = wine.target We are creating a list of target names and We are using train_test_split is used to split the data into two parts, one is train which is used to train the model and the other is test which is used to check how our model is working on unseen data. Here we are passing 0.3 as a parameter in the train_test_split which will split the data such that 30% of data will be in test part and rest 70% will be in the train part.

class_names = wine.target_names X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.30)

Step 3 - Training the model

Here we are using DecisionTreeClassifier to predict as a classification model and training it on the train data. After that predicting the output of test data. classifier_tree = DecisionTreeClassifier() y_predict = classifier_tree.fit(X_train, y_train).predict(X_test)

Step 5 - Creating Classification Report and Confusion Matrix

Let us first have a look on the parameters of Classification Report:

  • y_true : In this parameter we have to pass the true target values of the data.
  • y_pred : It this parameter we have to pass the predicted output of model.
  • target_names : In this parameter we have to pass the names of target.
For Confusion Matrix there are two parameters test and predicted values of the data. print(classification_report(y_test, y_predict, target_names=class_names)) print(confusion_matrix(y_test, y_predict)) So the output comes as

              precision    recall  f1-score   support

     class_0       0.95      0.95      0.95        19
     class_1       0.95      0.95      0.95        21
     class_2       0.95      0.95      0.95        19

   micro avg       0.95      0.95      0.95        59
   macro avg       0.95      0.95      0.95        59
weighted avg       0.95      0.95      0.95        59

[[18  1  0]
 [ 0 20  1]
 [ 1  0 18]]

Relevant Projects

Customer Churn Prediction Analysis using Ensemble Techniques
In this machine learning churn project, we implement a churn prediction model in python using ensemble techniques.

Natural language processing Chatbot application using NLTK for text classification
In this NLP AI application, we build the core conversational engine for a chatbot. We use the popular NLTK text classification library to achieve this.

Mercari Price Suggestion Challenge Data Science Project
Data Science Project in Python- Build a machine learning algorithm that automatically suggests the right product prices.

Resume parsing with Machine learning - NLP with Python OCR and Spacy
In this machine learning resume parser example we use the popular Spacy NLP python library for OCR and text classification.

Predict Credit Default | Give Me Some Credit Kaggle
In this data science project, you will predict borrowers chance of defaulting on credit loans by building a credit score prediction model.

Build an Image Classifier for Plant Species Identification
In this machine learning project, we will use binary leaf images and extracted features, including shape, margin, and texture to accurately identify plant species using different benchmark classification techniques.

Solving Multiple Classification use cases Using H2O
In this project, we are going to talk about H2O and functionality in terms of building Machine Learning models.

Music Recommendation System Project using Python and R
Machine Learning Project - Work with KKBOX's Music Recommendation System dataset to build the best music recommendation engine.

Data Science Project in Python on BigMart Sales Prediction
The goal of this data science project is to build a predictive model and find out the sales of each product at a given Big Mart store.

Choosing the right Time Series Forecasting Methods
There are different time series forecasting methods to forecast stock price, demand etc. In this machine learning project, you will learn to determine which forecasting method to be used when and how to apply with time series forecasting example.