当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy.nansum()用法及代码示例


当我们要计算将非数字(NaNs)视为零的给定轴上的数组元素之和时,请使用numpy.nansum()函数。

用法: numpy.nansum(arr, axis=None, dtype=None, out=None, keepdims=’no value’) 

参数:
arr :[数组]包含其总和是所需数字的数组。如果arr不是数组,则尝试进行转换。
axis :计算总和的一个或多个轴。默认值是计算展平数组的总和。
dtype :返回的数组和累加器的类型,元素在其中累加。默认情况下,使用arr的dtype。 out:[ndarray,可选]将结果存储到的位置。 ->如果提供,则必须具有广播输入的形状。 ->如果未提供或没有,则返回新分配的数组。 keepdims:bool,可选->如果将其设置为True,则缩小的轴将保留为尺寸1的尺寸。使用此选项,结果将针对原始arr正确广播。 ->如果值不是默认值,则keepdims将传递给ndarray子类的均值或求和方法。 ->如果子类方法未实现keepdims,则将引发任何异常。


Return :除非指定out,否则将返回保存结果的新数组,并在其中返回结果。如果轴不是None或arr,则结果与arr的大小相同,并且与arr的形状相同,是一维数组。

代码1:工作

# Python program explaining 
# numpy.nansum() function 
  
import numpy as geek 
in_num = 10
  
print ("Input  number:", in_num) 
    
out_sum = geek.nansum(in_num)  
print ("sum of array element:", out_sum) 

输out:

Input  number: 10
sum of array element: 10


代码2:

# Python program explaining 
# numpy.nansum function 
  
import numpy as geek 
  
in_arr = geek.array([[2, 2, 2], [2, 2, geek.nan]]) 
   
print ("Input array:", in_arr)  
    
out_sum = geek.nansum(in_arr)  
print ("sum of array elements:", out_sum) 

输out:

Input array: [[  2.   2.   2.]
 [  2.   2.  nan]]
sum of array elements: 10.0


代码3:

# Python program explaining 
# numpy.nansum function 
  
import numpy as geek 
  
in_arr = geek.array([[2, 2, 2], [2, 2, geek.nan]]) 
   
print ("Input array:", in_arr)  
    
out_sum = geek.nansum(in_arr, axis = 1)  
print ("sum of array elements taking axis 1:", out_sum) 

输out:

Input array: [[  2.   2.   2.]
 [  2.   2.  nan]]
sum of array elements taking axis 1: [ 6.  4.]


注意:如果同时存在正无穷大和负无穷大,则总和为非数字(NaN)。如果存在正无穷大和负无穷大之一,则总和将为正无穷大或负无穷大。

代码4:

# Python program explaining 
# numpy.nansum() function 
  
import numpy as geek 
  
in_arr1 = geek.array([2, -5, geek.nan, geek.inf]) 
in_arr2 = geek.array([1, 4, geek.inf, -geek.inf ]) 
   
print ("1st array elements:", in_arr1)  
print ("2nd array elements:", in_arr2)  
    
out_sum1 = geek.nansum(in_arr1)  
out_sum2 = geek.nansum(in_arr2) 
  
print ("sum of 1st array elements:", out_sum1)  
print ("sum of 2nd array elements:", out_sum2) 

输out:

1st array elements: [  2.  -5.  nan  inf]
2nd array elements: [  1.   4.  inf -inf]
sum of 1st array elements: inf
sum of 2nd array elements: nan


相关用法


注:本文由纯净天空筛选整理自jana_sayantan大神的英文原创作品 numpy.nansum() in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。