Skip to Content

Numpy – Check If Element is an Infinity or Not

In this tutorial, we will look at how to check if a value in a Numpy array is infinity (positive or negative) with the help of some examples.

How to test for infinity in a Numpy array?

element-wise check for infinity in numpy array

You can use the numpy.isinf() function to check (element-wise) if values in a Numpy array are infinity or not. The following is the syntax –

# test for infinity - pass scaler value or numpy array
np.isinf(a)

It returns a boolean value (True if the value is positive or negative infinity otherwise False) if you pass a scaler value and a 1-D boolean array if you pass an array.

Examples

Let’s now look at some examples of using the above function to test for infinity.

Example 1 – Check if a number is an infinity or not using numpy.isinf()

First, let’s pass scaler values to the numpy.isinf() function.

Let’s create three variables – one containing a finite value and the others set to positive and negative infinity respectively and then apply the numpy.isinf() function on each of these values.

import numpy as np

# create three variables with scaler values
a = 21
b = np.inf
c = -np.inf

# check for infinity
print(np.isinf(a))
print(np.isinf(b))
print(np.isinf(c))

Output:

False
True
True

We get False as the output for the scaler value 21 and True as the output for both the positive and the negative infinity values.

Example 2 – Element-wise check for infinity in a Numpy array using numpy.isinf()

If you apply the numpy.isinf() function on an array, it will return a boolean array containing True for values that are infinity and False for finite values.

Let’s create a 1-D array and apply the numpy.isinf() function to it.

# create a numpy array
ar = np.array([1, 2, np.inf, 4, 5, -np.inf, np.inf])
# check for infinity in ar
np.isinf(ar)

Output:

array([False, False,  True, False, False,  True,  True])

We get a boolean array as an output. You can see that in the boolean array we get True for only the values that test as infinity in the original array.

Summary

In this tutorial, we looked at how we can use the numpy.isinf() function to check for infinity (both positive and negative infinities) in a Numpy array. Keep in mind that if you pass a scaler value, it returns a boolean value and if you pass a 1-D array it returns a boolean array.

You might also be interested in –


Subscribe to our newsletter for more informative guides and tutorials.
We do not spam and you can opt out any time.


Author

  • Piyush

    Piyush is a data scientist passionate about using data to understand things better and make informed decisions. In the past, he's worked as a Data Scientist for ZS and holds an engineering degree from IIT Roorkee. His hobbies include watching cricket, reading, and working on side projects.