numpy.nancumsum#

numpy.nancumsum(a, axis=None, dtype=None, out=None)[源代码]#

返回数组元素在给定轴上的累积和,将非数字(NaNs)视为零.遇到 NaNs 时,累积和不改变,且前面的 NaNs 被替换为零.

对于全是NaN或空的切片,返回零.

在 1.12.0 版本加入.

参数:
aarray_like

输入数组.

axisint, 可选

计算累积和的轴.默认值(None)是计算展平数组上的累积和.

dtypedtype, 可选

返回的数组类型以及元素累加的累加器类型.如果未指定 dtype,则默认为 a 的 dtype,除非 a 具有精度低于默认平台整数精度的整数 dtype.在这种情况下,使用默认平台整数.

outndarray, 可选

要在其中放置结果的替代输出数组.它必须具有与预期输出相同的形状和缓冲区长度,但如有必要,类型将被转换.有关更多详细信息,请参见 输出类型确定.

返回:
nancumsumndarray.

除非指定了 out ,否则将返回一个保存结果的新数组.结果的大小与 a 相同,如果 axis 不是 None 或者 a 是一个 1-d 数组,则结果的形状与 a 相同.

参见

numpy.cumsum

数组累积和,传播NaNs.

isnan

显示哪些元素是 NaN.

示例

>>> import numpy as np
>>> np.nancumsum(1)
array([1])
>>> np.nancumsum([1])
array([1])
>>> np.nancumsum([1, np.nan])
array([1.,  1.])
>>> a = np.array([[1, 2], [3, np.nan]])
>>> np.nancumsum(a)
array([1.,  3.,  6.,  6.])
>>> np.nancumsum(a, axis=0)
array([[1.,  2.],
       [4.,  2.]])
>>> np.nancumsum(a, axis=1)
array([[1.,  3.],
       [3.,  3.]])