# Test array values for NaN and store the result in a new location in Numpy

NumpyServer Side ProgrammingProgramming

#### Python Data Science basics with Numpy, Pandas and Matplotlib

Most Popular

63 Lectures 6 hours

#### Data Analysis using NumPy and Pandas

19 Lectures 8 hours

#### Numpy with Python

Most Popular

12 Lectures 3 hours

To test array values for NaN, use the numpy.isnan() method in Python Numpy. The new location where we will store the result is a new array. Returns True where x is NaN, false otherwise. This is a scalar if x is a scalar. The condition is broadcast over the input. At locations where the condition is True, the out array will be set to the ufunc result. Elsewhere, the out array will retain its original value. Note that if an uninitialized out array is created via the default out=None, locations within it where the condition is False will remain uninitialized.

NumPy uses the IEEE Standard for Binary Floating-Point for Arithmetic (IEEE 754). This means that Not a Number is not equivalent to infinity.

## Steps

At first, import the required library −

import numpy as np

Create an array with some NaN values −

arr = np.array([1, 2, 10, 50, -np.nan, 0., np.nan, np.inf])


Display the array −

print("Array...\n", arr)

Get the type of the array −

print("\nOur Array type...\n", arr.dtype)


Get the dimensions of the Array −

print("\nOur Array Dimensions...\n",arr.ndim)

Get the number of elements in the Array −

print("\nNumber of elements...\n", arr.size)


Create another array with the same shape to store the result −

arrRes = np.array([5, 5, 5, 5, 5, 5, 5, 5])

To test array values for NaN, use the numpy.isnan() method in Python Numpy. The new location where we will store the result is arrRes −

print("\nTest array for NaN...\n",np.isnan(arr, arrRes))


Check the value of the new array where our result is stored −

print("\nResult...\n",arrRes)

## Example

import numpy as np

# Create an array with some NaN values
arr = np.array([1, 2, 10, 50, -np.nan, 0., np.nan, np.inf])

# Display the array
print("Array...\n", arr)

# Get the type of the array
print("\nOur Array type...\n", arr.dtype)

# Get the dimensions of the Array
print("\nOur Array Dimensions...\n",arr.ndim)

# Get the number of elements in the Array
print("\nNumber of elements...\n", arr.size)

# Create another array with the same shape to store the result
arrRes = np.array([5, 5, 5, 5, 5, 5, 5, 5])

# To test array values for NaN, use the numpy.isnan() method in Python Numpy
# The new location where we will store the result is arrRes
print("\nTest array for NaN...\n",np.isnan(arr, arrRes))

# Check the value of the new array where our result is stored
print("\nResult...\n",arrRes)

## Output

Array...
[ 1. 2. 10. 50. nan 0. nan inf]

Our Array type...
float64

Our Array Dimensions...
1

Number of elements...
8

Test array for NaN...
[0 0 0 0 1 0 1 0]

Result...
[0 0 0 0 1 0 1 0]