How to count the NaN values in a column in Pandas DataFrame?

In this tutorial, we will learn how to count the NaN values in a column in Pandas DataFrame? By Pranit Sharma Last updated : April 12, 2023

Overview

While creating a DataFrame or importing a CSV file, there could be some NaN values in the cells. NaN values mean "Not a Number" which generally means that there are some missing values in the cell. To deal with this type of data, you can either remove the particular row (if the number of missing values is low) or you can handle these values. For handling these values, you might need to count the number of NaN values.

Count the number of NaN values

To count the number of NaN values, you can use the sum() method over the isnull() method. Follow the below given steps:

Syntax

df.isnull().sum().sum()

Syntax Explained

  • The isnull() method return a True or False value where True means that there is some missing data and False means that the data is not null. True and False are treated as 1 and 0 respectively.
  • The sum() method returns the count of True values generated from the isnull() method.

Here, you have to use sum() method twice in order to count the NaN values in the entire dataset. First, it will count the NaN values in each column and second time it will add all the NaN values from all the columns.

Python code to count the NaN values in a column in Pandas DataFrame

# Importing pandas package
import pandas as pd

# To create NaN values, you must import numpy package,
# then you will use numpy.NaN to create NaN values
import numpy as np

# Creating a dictionary with some NaN values
d = {
    "Name":['Hari','Mohan','Neeti','Shaily'],
    "Age":[25,np.NaN,np.NaN,21],
    "Gender":['Male','Male',np.NaN,'Female'],
    "Profession":['Doctor','Teacher','Singer',np.NaN]
}

# Now we will create DataFrame
df = pd.DataFrame(d)

# Printing the original DataFrame
print("Original DataFrame:\n")
print(df,"\n\n")

# Counting NaN values
NAN=df.isnull().sum().sum()

# Now, Printing the Number of NaN values
print("Total NaN values:")
print(NAN)

Output

Original DataFrame:

     Name   Age  Gender Profession
0    Hari  25.0    Male     Doctor
1   Mohan   NaN    Male    Teacher
2   Neeti   NaN     NaN     Singer
3  Shaily  21.0  Female        NaN 


Total NaN values:
4

Python Pandas Programs »


Comments and Discussions!

Load comments ↻






Copyright © 2024 www.includehelp.com. All rights reserved.