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


Python numpy nansum用法及代码示例


本文简要介绍 python 语言中 numpy.nansum 的用法。

用法:

numpy.nansum(a, axis=None, dtype=None, out=None, keepdims=<no value>, initial=<no value>, where=<no value>)

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

在 NumPy 版本 <= 1.9.0 中,对于 all-NaN 或空的切片返回 Nan。在更高版本中返回零。

参数

a array_like

包含需要其总和的数字的数组。如果 a 不是数组,则尝试转换。

axis {int,int 元组,无},可选

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

dtype 数据类型,可选

返回数组的类型和元素相加的累加器的类型。默认情况下,使用 a 的 dtype。一个例外是当 a 的整数类型的精度低于平台 (u)intp 时。在这种情况下,默认值将是 (u)int32 或 (u)int64,具体取决于平台是 32 位还是 64 位。对于不精确的输入,dtype 必须是不精确的。

out ndarray,可选

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

keepdims 布尔型,可选

如果将其设置为 True,则缩小的轴将作为尺寸为 1 的尺寸留在结果中。使用此选项,结果将针对原始 a 正确广播。

如果该值不是默认值,则保持昏暗将被传递到numpy.mean或者numpy.sum子类的方法numpy.ndarray。如果子类方法没有实现保持昏暗将引发任何异常。

initial 标量,可选

总和的起始值。有关详细信息,请参阅 reduce

where 类似于 bool 的数组,可选

要包含在总和中的元素。有关详细信息,请参阅 reduce

返回

nansum 数组。

除非指定了 out,否则将返回一个保存结果的新数组,并在其中返回它。如果轴不是 None 或 a 是一维数组,则结果具有与 a 相同的大小和相同的形状。

注意

如果同时存在正无穷大和负无穷大,则总和将不是数字 (NaN)。

例子

>>> 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.NINF])
-inf
>>> from numpy.testing import suppress_warnings
>>> with suppress_warnings() as sup:
...     sup.filter(RuntimeWarning)
...     np.nansum([1, np.nan, np.inf, -np.inf]) # both +/- infinity present
nan

相关用法


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