numpy.asarray_chkfinite () in Python

numpy.asarray_chkfinite() is used when we want to convert the input to an array, checking for NaN (not a number) or Infs (infinity). Input includes scalars, lists, lists of tuples, tuples, tuples of tuples, tuples of lists, and ndarrays.

Syntax: numpy.asarray_chkfinite (arr, dtype = None, order = None)

Parameters:
arr: [array_like] Input data, in any form that can be converted to an float type array … This includes scalar, lists, lists of tuples, tuples, tuples of tuples, tuples of lists and ndarrays.
dtype: By default, the data-type is inferred from the input data.
order: Whether to use row-major (C-style) or column-major (Fortran-style) memory representation. Defaults to `C`.

Return: [ndarray] Array interpretation of arr. No copy is performed if the input is already ndarray. If arr is a subclass of ndarray, a base class ndarray is returned.

Code # 1: List to Array

# Python program explaining
# numpy.asarray_chkfinite () function

 

import numpy as geek

my_list = [ 1 , 3 , 5 , 7 , 9 ]

  

print (< / code> "Input list:" , my_list)

  

 

out_arr = geek.asarray_chkfinite (my_list, dtype = ` float ` )

print ( "output array from input list:" , out_arr) 

Output:

 Input list: [1, 3, 5, 7, 9] output array from input list: [1. 3. 5. 7. 9.] 

Code # 2: tuple to array

# Python program explaining
# num py.asarray_chkfinite () function

 

import numpy as geek

 

my_tuple = ([ 1 , 3 , 9 ], [ 8 , 2 , 6 ])

 

print ( " Input tuple: " , my_tuple)

  

out_arr = geek.asarray_chkfinite (my_tuple, dtype = ` int8`

print ( "output array from input tuple: " , out_arr) 

Output:

 Input tuple: ([1, 3, 9], [8, 2, 6]) output array from input tuple: [ [1 3 9] [8 2 6]] 

Note: numpy.asarray_chkfinite () raises ValueError if arr contains NaN (not a number) or Inf (infinity).

Code # 3:

# Program Python explaining
# numpy.asarray_chkfinite () function
# when a value error occurs  

 

import numpy as geek

 

my_list = [ 1 , 3 , 5 , 7 , geek.inf, geek.nan]

 

print ( "Input scalar:" , my_scalar)

 

out_arr = geek.asarray_chkfinite (my_list) 

print ( " output fortan array from input scalar: " , out_arr) 

Output:

 ValueError: array must not contain infs or NaNs