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.

Hope you have liked this article on how to find zeros using the Numpy Count Nonzero method. If you have any queries then you can contact us for more information.

Source:

#### Join our list

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