numpy.nancumprod #

麻木的。nancumprod ( a , axis = None , dtype = None , out = None ) [来源] #

返回给定轴上数组元素的累积乘积,将非数字 (NaN) 视为 1。当遇到 NaN 且前导 NaN 被替换为 1 时,累积乘积不会改变。

对于全 NaN 或空的切片,将返回 1。

1.12.0 版本中的新增内容。

参数
类似数组

输入数组。

int,可选

计算累积乘积所沿的轴。默认情况下,输入是扁平化的。

数据类型数据类型,可选

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

输出ndarray,可选

用于放置结果的替代输出数组。它必须具有与预期输出相同的形状和缓冲区长度,但如果需要,将转换结果值的类型。

返回
nancumprod ndarray

除非指定了out ,否则将返回保存结果的新数组,在这种情况下将返回它。

也可以看看

numpy.cumprod

跨数组传播 NaN 的累积乘积。

isnan

显示哪些元素是 NaN。

例子

>>> np.nancumprod(1)
array([1])
>>> np.nancumprod([1])
array([1])
>>> np.nancumprod([1, np.nan])
array([1.,  1.])
>>> a = np.array([[1, 2], [3, np.nan]])
>>> np.nancumprod(a)
array([1.,  2.,  6.,  6.])
>>> np.nancumprod(a, axis=0)
array([[1.,  2.],
       [3.,  2.]])
>>> np.nancumprod(a, axis=1)
array([[1.,  2.],
       [3.,  3.]])