dask.array.nansum

dask.array.nansum

dask.array.nansum(a, axis=None, dtype=None, keepdims=False, split_every=None, out=None)[源代码]

返回在给定轴上数组元素的总和,将非数字 (NaNs) 视为零。

此文档字符串是从 numpy.nansum 复制的。

Dask 版本可能存在一些不一致性。

在 NumPy 版本 <= 1.9.0 中,对于所有为 NaN 或空的切片,返回 NaN。在后续版本中,返回零。

参数
aarray_like

包含所需求和数字的数组。如果 a 不是数组,则尝试进行转换。

{int, int 的元组, None}, 可选

计算总和的轴或轴。默认是计算展平数组的总和。

dtype数据类型,可选

返回数组的类型以及累加器中元素求和的类型。默认情况下,使用 a 的 dtype。当 a 具有精度低于平台 (u)intp 的整数类型时,会出现异常。在这种情况下,默认值将取决于平台是 32 位还是 64 位,分别为 (u)int32 或 (u)int64。对于不精确的输入,dtype 必须是不精确的。

1.8.0 新版功能.

ndarray,可选

要放置结果的备用输出数组。默认值为 None 。如果提供,它必须具有与预期输出相同的形状,但如果需要,类型将被强制转换。有关更多详细信息,请参阅 Output type determination 。将 NaN 转换为整数可能会产生意外结果。

1.8.0 新版功能.

keepdimsbool, 可选

如果设置为 True,被减少的轴将作为尺寸为1的维度保留在结果中。使用此选项,结果将与原始 a 正确广播。

如果值不是默认值,那么 keepdims 将被传递给 ndarray 子类的 meansum 方法。如果子类的方法没有实现 keepdims,任何异常都将被引发。

1.8.0 新版功能.

初始标量,可选 (Dask 中不支持)

求和的起始值。详情请参见 ~numpy.ufunc.reduce

1.22.0 新版功能.

哪里array_like 的布尔值,可选 (Dask 不支持)

要包含在总和中的元素。详情请参见 ~numpy.ufunc.reduce

1.22.0 新版功能.

返回
nansumndarray.

除非指定了 out,否则将返回一个包含结果的新数组。结果的大小与 a 相同,如果 axis 不是 None 或者 a 是一个一维数组,则结果的形状与 a 相同。

参见

numpy.sum

跨数组求和,传播 NaNs。

isnan

显示哪些元素是 NaN。

isfinite

显示哪些元素不是 NaN 或 +/-inf。

注释

如果正无穷和负无穷同时存在,它们的和将是非数字(NaN)。

示例

>>> import numpy as np  
>>> np.nansum(1)  
1
>>> np.nansum([1])  
1
>>> np.nansum([1, np.nan])  
1.0
>>> a = np.array([[1, 1], [1, np.nan]])  
>>> np.nansum(a)  
3.0
>>> np.nansum(a, axis=0)  
array([2.,  1.])
>>> np.nansum([1, np.nan, np.inf])  
inf
>>> np.nansum([1, np.nan, -np.inf])  
-inf
>>> from numpy.testing import suppress_warnings  
>>> with np.errstate(invalid="ignore"):  
...     np.nansum([1, np.nan, np.inf, -np.inf]) # both +/- infinity present
np.float64(nan)