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