Open In App

numpy.asarray_chkfinite() in Python

Last Updated : 23 Nov, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

numpy.asarray_chkfinite() function is used when we want to convert the input to an array, checking for NaNs (Not A Number) or Infs(Infinities). Input includes scalar, 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




# Python program explaining
# numpy.asarray_chkfinite() function
 
import numpy as geek
my_list = [1, 3, 5, 7, 9]
 
print ("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




# Python program explaining
# numpy.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() function raises ValueError if arr contains NaN (Not a Number) or Inf (Infinity).   Code #3 : 

Python




# Python program explaining
# numpy.asarray_chkfinite() function
# when 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 fortran array from input scalar : ", out_arr)


Output : 

ValueError: array must not contain infs or NaNs


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads