# Numpy Count Nonzero Method: How to count Zero elements in array

Numpy Count Nonzero Method

Do you want to know how many elements in your numpy array is 0? How many elements are non-zero. If yes then you have come to the right place. In this entire tutorial, you will implement numpy count nonzero method in step by step.

## Steps to Implement Numpy Count Nonzero method

### Step 1: Import NumPy library

In this tutorial, I am using only NumPy library so import it using the import statement.

``import numpy as np``

### Step 2: Create A Sample Numpy array

For the demonstration purpose, you have to create a NumPy array. Here I am finding zero or non-zero elements on both 1D and 2D array.

Let’s create them.

1D Array

``array_1d = np.array([1,2,0,0,4,5,0])``

Output

`array([1, 2, 0, 0, 4, 5, 0])`

2D Numpy array

``array_2d = np.array([[1,2,0],[0,4,5],[0,0,1]])``

Output

```array([[1, 2, 0],
[0, 4, 5],
[0, 0, 1]])```

### Step 3: Apply the Numpy count_nonzero() method.

Now after the creation let’s apply this function on 1D and 2D array.

#### Applying count nonzero() on 1D array

To find non-zero or zero elements in the 1D array, you have to just pass the array inside the count_nonzero() method.

Find the number of Non-zero elements

``np.count_nonzero(array_1d)``

Output

Number of zero elements.

``array_1d.size - np.count_nonzero(array_1d)``

Output

#### Applying Numpy Count Nonzero  on a 2D array

On 2 D there are three cases. One case is to find all non-zero elements on the entire array. The second is the number of non-zero elements for each row. And the last case is to find the number of non-zero elements for each column.

Case 1: Find the non-zero elements for an entire array

To find it you have to just pass your 2D array inside the numpy.count_nonzero().

``np.count_nonzero(array_2d)``

Output

Case 2: Find the non-zero elements for each row.

In this case, you have to add an extra argument inside the method and that is axis =1. It will find all the non-zero elements.

``np.count_nonzero(array_2d,axis=1)``

Output

Case 3: Find the non-zero elements for each column.

In the same way, you can find all the non-zero elements of the 2D array by setting axis =0. Execute the lines of code.

``np.count_nonzero(array_2d,axis=0)``

Output

To find the number of zeros elements you have to just subtract the count of non-zero elements with the array size.

``array_2d.size - np.count_nonzero(array_2d)``

Output

## Conclusion

If you want to count the zero or non-zero elements in the array the numpy.count_nonzero method is the best. These are the implementation of this method in python. There is another method to find non-zero elements and it is np.where() but it is not an efficient way to do so.

Source:

Numpy Documentation

Subscribe to our mailing list and get interesting stuff and updates to your email inbox.

Something went wrong.

Thank you For sharing.We appreciate your support. Don't Forget to LIKE and FOLLOW our SITE to keep UPDATED with Data Science Learner