numpy.nancumprod#
- numpy.nancumprod(a, axis=None, dtype=None, out=None)[源代码]#
返回给定轴上数组元素的累积积,并将非数字 (NaN) 视为 1. 当遇到 NaN 时,累积积不会改变,并且前导 NaN 会被 1 替换.
对于全为 NaN 或为空的切片,将返回 1.
- 参数:
- aarray_like
输入数组.
- axis整数,可选
计算累积积的轴. 默认情况下,输入会被展平.
- dtypedtype, optional
返回数组的类型,以及元素相乘的累加器的类型.如果未指定 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.]])