# Python NumPy nan – Complete tutorial

In this Python tutorial, we will discuss Python NumPy nan with a few examples like below:

Python numpy Nan to zero
Python numpy create Nan array
Python numpy Nan to none
Python numpy Nan mean
Python numpy Nan max
Python numpy Nan min
Python numpy Nan index
Python numpy remove Nan from array
Python numpy replace Nan with empty string
Python numpy Nan average
Python numpy Nan equal
Python numpy Nan compare

## Python numpy nan

In this section, we will discuss Python numpy nan

To check for NaN values in a Python Numpy array you can use the np.isnan() method.
NaN stands for Not a Number. It is used to represent entries that are undefined. It is also used for representing missing values in an given array.
NaN is a special floating-point value which cannot be converted to any other type than float.
Important thing I would like you to take away from this is that all of our integers have been converted to floats, and that’s because the NumPy has defined the NaN data type as the float.
It is defined in numpy with special values like nan,inf.
Numpy uses the IEEE standard for floating point for airthmetic. This means that not a number is not equivalent to infinity.

Syntax:

Here is the Syntax of numpy.isnan

numpy.isnan
(
x,
out=None,
where=True,
casting=’same_kind’,
order=’k’,
dtype=None
)

It consists of few parameters

X: Input array

Out: A location into which the result is stored. If provided, it must have a shape that the inputs broadcast to. If not provided or None, a freshly-allocated array is returned..

Where: It is an optional parameter. This 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.

Returns: It returns a boolean mask of the size that of the original array.

Example:

import numpy as np
arr = np.array([2, np.nan, 6, 8, 9, 10, np.nan])
b = np.isnan(arr)
print(b)

In the above example first we will import a numpy library and create an array by using the function np.array. After that create a variable and store the values in isnan function.
The output array has true for the indices which are NaNs in the original array and false for the rest.

Here is the Screenshot of the following given code

Python numpy nan

## How to check the nan values in numpy array (another method)

A NaN implemented following the standard, is the only value for which the inequality comparison with itself should return True.
In this method we use the function is_nan and for loop.
If it is a number the comparison should succeed and return the result in the form of boolean mask.

Example:

def is_nan(x):
return (x != x)
import numpy as np
values = [float(‘nan’), np.nan, 55, “string”, lambda x : x]
for value in values:
print(f”{repr(value):<8} : {is_nan(value)}”)

Here is the Screenshot of the following given code

Python numpy nan isnan method

## Python numpy nan to zero

In this section, we will discuss Python numpy nan to zero.
In this method we can easily use the function numpy.nan_to_num.

Replacing NaN values with zeros in a numpy array converts every instance of NaN to zero.
We can use np.nan_to_num to convert numpy nan to zero.

nan_to_num() function is used if we want to replace nan values with zero. It returns (positive) infinity with a very large number and negative infinity with a very small (or negative) number.

Syntax:

numpy.nan_to_num
(
x,
copy=True,
nan=0.0,
posinf=None,
neginf=None
)

It consists of few parameters

X: input data

Copy: It is an optional parameter. Whether to create a copy of x (True) or to replace values in-place (False). The in-place operation only occurs if casting to an array does not require a copy. Default is True.

Nan: Value to be used to fill NaN values. If no value is passed then NaN values will be replaced with 0.0.

posinf: Value to be used to fill positive infinity values. If no value is passed then positive infinity values will be replaced with a very large number.

Example:

import numpy as np
arr = np.array([2, np.nan, np.nan, np.nan, np.nan, 10, np.nan])
b = np.nan_to_num(arr)
print(b)

In the above example first we will import a numpy library and create an array by using the function np.array. After that create a variable and store the values in nan_to_num function.
The output array will be display in the form zero’s value and posinf values.

Here is the Screenshot of the following given code

Python numpy nan to zero

## Another method to convert nan values with zero’s in numpy array

In this method the function isnan produces a bool array indicating where the NaN values are. A boolean array can by used to index an array of the same shape.
You could use np.where to find where you have Nan values.
We can use the function np.where(np.nan) to convert nan values with zero’s.

Example:

import numpy as np
arr = np.array([[2, np.nan, np.nan, np.nan, np.nan, 10, np.nan],
[3, np.nan, np.nan, np.nan, np.nan, 7, np.nan ],
[4, np.nan, np.nan, np.nan, np.nan, 6, np.nan]])
b = np.where(np.isnan(arr),0,arr)
print(b)

Here is the Screenshot of the following given code

Python numpy nan to zero np. where the method

## Python numpy create nan array

In this section, we will discuss Python numpy create nan array.
To create an array with nan values we have to use numpy.empty() and fill() function.
It retruns a full array with the same shape and type as a given array.
Use numpy. empty((x,y)) to create an uninitialized array with x rows and y columns. Then, assign NaN to all values in the array.

Example:

import numpy as np

arr = np.empty((5,5))
arr[:] = np.NaN
print(arr)

In the above example first we will import a numpy library and we can create an uninitialized array and assign to all entries at once.
In this method we can easily use the function np.empty and np.nan to create the nan values in the array.

Here is the Screenshot of the following given code

Python numpy create nan array

## Another method to check how to create numpy nan array

In this method we can easily use the functions np.nan and np.ones. To create an uninitialized array with x rows and y columns.
We use multiplication method to get the nan values in an array.

Example:

Let’s take an example to check how to create a NumPy nan array

import numpy as np

b= np.nan * np.ones(shape=(3,2))
print(b)

Here is the Screenshot of the following given code

Python numpy creates nan array np. one’s method

## Python numpy nan to none

In this section, we will discuss Python numpy nan to none.
NaN can be used as a numerical value on mathematical operations, while None cannot (or at least shouldn’t). NaN is a numeric value, as defined in IEEE 754 floating-point standard. None is an internal Python type ( NoneType ) and would be more like inexistent or “empty” than numerically invalid.
In this method we can easily use the functions np.fill() and np.nan(). if we set a value in an integer array to np.nan, it will automatically converted into none value.

Example:

Let’s take an example to check numpy nan to none

import numpy as np

A = np.array([2,3,np.nan,np.nan,np.nan])
b = A.fill(np.nan)
print(b)

Here is the Screenshot of the following given code

Python numpy nan to none

## Python numpy nanmean

In this section, we will discuss Python numpy nanmean.
In this method we can easily use the function numpy.nanmean()

This function can be used to calculate the mean of array. If array have NaN value and we can find out the mean without effect of NaN value.
It will returns the average of the array elements.

Syntax:

Here is the Syntax of numpy can mean

numpy.nanmean
(
arr,
axis=None,
dtype=None,
out=None,
)

It consists of few parameters.

arr: Array containing numbers whose mean is desired.

Axis: Axis along which the means are computed. The default is to compute the mean of the flattened array.

dtype: Type to use in computing the mean.

Returns: If out=None, returns a new array containing the mean values, otherwise a reference to the output array is returned.

Example:

import numpy as np

A = np.array([2,3,4,np.nan,np.nan])
b = np.nanmean(A)
print(b)

Here is the Screenshot of the following given code

Python numpy can mean

## Python numpy nanmax

In this section, we will discuss Python numpy nanmax.
In this method we can easily use the function np.nanmax().
This function is used to returns maximum value of an array or along any specific mentioned axis of the array.
An array with the same shape as a, with the specified axis removed. If a is a 0-d array, or if axis is None, an ndarray scalar is returned.
The maximum value of an array along a given axis, propagating any NaNs.

Syntax:

Here is the Syntax of np. nanmax()

numpy.nanmax
(
arr,
axis=None,
out=None
)

Example:

import numpy as np

A = np.array([8,4,6,np.nan,np.nan])
b = np.nanmax(A)
print(“max of arr : “, np.amax(A))
print(b)

Here is the Screenshot of the following given code

Python numpy nanmax

## Python numpy nanmin

In this section, we will discuss Python numpy nanmin.
In this method we can easily use the function numpy.nanmin().
This function is used when to returns minimum value of an array or along any specific mentioned axis of the array.
The minimum value of an array along a given axis, propagating any NaNs.

Syntax:

Here is the Syntax of numpy.nanmin()

numpy.nanmin
(
arr,
axis=None,
out=None
)

Example:

import numpy as np

A = np.array([7,2,6,np.nan,np.nan])
b = np.nanmin(A)
print(“min of arr : “, np.amin(A))
print(b)

In the above example first we will create a numpy library and create a function using np.array function and assign the nan and non nanvalues in the arguments.
After that use the function nanmin() to Return minimum element of an array or minimum along an axis.

Here is the Screenshot of the following given code

Python numpy nanmin

## Python numpy nan index

In this section, we will discuss Python numpy nan index.
In this method we can easily use the function numpy.argmin to get the index of nanvalues.
It will return the indices of the minimum values in the specified axis ignoring NaNs

Syntax:

Here is the Syntax of numpy.argmin

numpy.nanargmin
(
arr,
axis=None
)

It consists of few parameters

arr: Input data

axis: Its an optional parameter. Axis along which to operate. By default flattened input is used.

Returns: An array of indices or a single index value.

Example:

import numpy as np

A = np.array([7,2,6,np.nan])
b = np.argmin(A)

print(b)

Here is the Screenshot of the following given code

Python numpy nan index

## Python numpy remove nan from array

In this section, we will discuss Python numpy remove nan from array.
In this method we can easily use the function logical_not() and isnan() to remove nan value from an given array.
Logical_not() is used to apply logical Not to elements of an array. isnan() is a boolean function that checks whether an element is nan value or not.
So, in the end, we get indexes for all the elements which are not nan.

Example:

import numpy as np

arr = np.array([4,2,6,np.nan,np.nan,8,np.nan])
b = arr[np.logical_not(np.isnan(arr))]

print(b)

Here is the Screenshot of the following given code

Python numpy remove nan from an array

## Another method to remove nan values from array

To remove nan values from array in Python, we can easily use the function isfinite().
isfinite() function is a boolean function that checks whether an element is finite or not.

Example:

import numpy as np

arr = np.array([3,4,6,np.nan,np.nan,9,np.nan])
b = arr[np.isfinite(arr)]

print(b)

Here is the Screenshot of the following given code

Python numpy remove nan from array isfinite method

## Operator method to remove nan values from array

In this method we can combine ~ operator with numpy.isnan() function.
If the dimension of the array is 2d, it will convert into 1d array.

Example:

import numpy as np

arr = np.array([[3,4,6,np.nan,np.nan,9,np.nan],
[2,5,6,np.nan,np.nan,3,np.nan]])
b = arr[~(np.isnan(arr))]

print(b)

Here is the Screenshot of the following given code

Python numpy remove nan from array operator method

## Python numpy replace nan with empty string

In this section, we will discuss Python numpy replace Nan with empty string.
In this method we can easily use the function replace() to convert Nan value with empty string.
In this method we can also used the pandas library to replace Nan value with empty string.

Example:

import numpy as np
import pandas as pd
df = pd.DataFrame({
‘A’: [‘a’, ‘b’, ‘c’],
‘B’: [np.nan, 1, np.nan]})
df1 = df.replace(np.nan, ”, regex=True)
print(df1)

Here is the Screenshot of the following given code

Python numpy replace nan with an empty string

## Python numpy nan average

In this section, we will discuss Python numpy nan average.
In this method, it will compute the arithmetic mean along the specified axis, ignoring NaNs. Returns the average of the array elements.
The average is taken over the flattened array by default, otherwise over the specified axis.
In this method to check numpy nan average we can use the function numpy.nanmean().
It will returns the average of the array elements

Syntax:

numpy.nanmean
(
arr,
axis=None,
dtype=None,
out=None,
)

Example:

import numpy as np

C = np.array([4,5,6,np.nan,np.nan,8,9,5])
b = np.nanmean(C)
print(b)

Here is the Screenshot of the following given code

Python numpy nan average

## Python numpy nan equal

In this section, we will discuss Python numpy nan equal.
In this method we can use numpy.testing.assert equal with a try-except block.
Numpy.testing.assert equal() indicates that it consider that Nan values are equal or not.
It will return the result in the form of true or false.
If the nan values are not equal it will return false otherwise true.

Example:

import numpy as np

def nan_equal(a,b):
try:
np.testing.assert_equal(a,b)
except AssertionError:
return False
return True

a=np.array([3, 2, np.NaN])
b=np.array([3, 2, np.NaN])
c= nan_equal(a,b)
print(c)

Here is the Screenshot of the following given code

Python numpy nan equal

## Python numpy nan compare

In this section, we will discuss Python numpy nan compare.
To check for NaN values in a Numpy array you can use the np.isnan() method. This outputs a boolean mask of the size that of the original array.
The output array has true for the indices which are NaNs in the original array and false for the rest.

Example:

def isNaN(num):
return num!= num
x=float(“nan”)
b =isNaN(x)
print(b)

Here is the Screenshot of the following given code

Python numpy nan compare

You may like the following Python tutorials:

In this Python tutorial, we will discuss Python NumPy nan with a few examples like below:

Python numpy Nan to zero
Python numpy create Nan array
Python numpy Nan to none
Python numpy Nan mean
Python numpy Nan max
Python numpy Nan min
Python numpy Nan index
Python numpy remove Nan from array
Python numpy replace Nan with empty string
Python numpy Nan average
Python numpy Nan equal
Python numpy Nan compare