numpy.nancumprod#
- numpy.nancumprod(a, axis=None, dtype=None, out=None)[source]#
返回在给定轴上数组元素的累积乘积,将非数字 (NaN) 视为 1。当遇到 NaN 时,累积乘积不会改变,并且前导 NaN 将被替换为 1。
对于全为 NaN 或为空的切片,将返回 1。
版本 1.12.0 中的新增功能。
- 参数:
- aarray_like
输入数组。
- axisint, 可选
计算累积乘积的轴。默认情况下,输入将被展平。
- dtypedtype, 可选
返回数组的类型,以及累加器中元素相乘的类型。如果未指定 dtype,则默认为 a 的 dtype,除非 a 的整数 dtype 的精度低于默认平台整数的精度。在这种情况下,将使用默认平台整数。
- outndarray, 可选
放置结果的备用输出数组。它必须具有与预期输出相同的形状和缓冲区长度,但如果需要,结果值的类型将被强制转换。
- 返回值:
- nancumprodndarray
除非指定了 out,否则将返回一个包含结果的新数组,在这种情况下,将返回该数组。
参见
numpy.cumprod
在传播 NaN 的情况下,数组的累积乘积。
isnan
显示哪些元素是 NaN。
示例
>>> import numpy as np >>> 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.]])