Python中的 numpy.nanprod()
当我们想要计算数组元素在给定轴上的乘积时,使用numpy.nanprod()
函数,将NaNs
视为一个。对于全为 NaN 或空的切片返回一个。
Syntax : numpy.nanprod(arr, axis=None, dtype=None, out=None, keepdims=’class numpy._globals._NoValue’).
Parameters :
arr : [array_like] Array containing numbers whose sum is desired. If arr is not an array, a conversion is attempted.
axis : Axis along which the product is computed. The default is to compute the product of the flattened array.
dtype : The type of the returned array and of the accumulator in which the elements are summed. By default, the dtype of arr is used.
out : [ndarray, optional] 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.
keepdims : If this is set to True, the axes which are reduced are left in the result as dimensions with size one. With this option, the result will broadcast correctly against the original arr.
Return : A new array holding the result is returned unless out is specified, in which case it is returned.
代码#1:工作
# Python program explaining
# numpy.nanprod() function
import numpy as geek
in_num = 10
print ("Input number : ", in_num)
out_prod = geek.nanprod(in_num)
print ("product of array element : ", out_prod)
输出 :
Input number : 10
product of array element : 10
代码#2:
# Python program explaining
# numpy.nanprod function
import numpy as geek
in_arr = geek.array([[2, 2, 2], [2, 2, geek.nan]])
print ("Input array : ", in_arr)
out_prod = geek.nanprod(in_arr)
print ("product of array elements: ", out_prod)
输出 :
Input array : [[ 2. 2. 2.]
[ 2. 2. nan]]
product of array elements: 32.0
代码#3:
# Python program explaining
# numpy.nanprod function
import numpy as geek
in_arr = geek.array([[2, 2, 2], [2, 2, geek.nan]])
print ("Input array : ", in_arr)
out_prod = geek.nanprod(in_arr, axis = 1)
print ("product of array elements taking axis 1: ", out_prod)
输出 :
Input array : [[ 2. 2. 2.]
[ 2. 2. nan]]
product of array elements taking axis 1: [ 8. 4.]