numpy.nanprod #

麻木的。nanprod ( a , axis=None , dtype=None , out=None , keepdims=<无 值> , initial=<无 值> , where=<无 值> ) [来源] #

返回给定轴上数组元素的乘积,将非数字 (NaN) 视为 1。

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

1.10.0 版本中的新增内容。

参数
类似数组

包含需要其乘积的数字的数组。如果a不是数组,则尝试转换。

axis {int, int 元组, None}, 可选

计算乘积所沿的一个或多个轴。默认值是计算展平数组的乘积。

dtype数据类型,可选

返回的数组以及对元素进行求和的累加器的类型。默认情况下,使用a的数据类型。例外情况是a的整数类型精度低于平台 (u)intp。在这种情况下,默认值为 (u)int32 或 (u)int64,具体取决于平台是 32 位还是 64 位。对于不精确的输入,dtype 必须不精确。

输出ndarray,可选

用于放置结果的备用输出数组。默认为None.如果提供,它必须具有与预期输出相同的形状,但如果需要,类型将被转换。有关更多详细信息,请参阅 输出类型确定。将 NaN 转换为整数可能会产生意想不到的结果。

keepdims布尔值,可选

如果为 True,则减少的轴将作为大小为 1 的维度保留在结果中。使用此选项,结果将根据原始arr正确广播。

初始标量,可选

该产品的起始值。reduce 详情请参阅。

1.22.0 版本中的新增功能。

其中array_like of bool,可选

产品中包含的元素。reduce 详情请参阅。

1.22.0 版本中的新增功能。

返回
纳米产品阵列

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

也可以看看

numpy.prod

跨数组传播 NaN 的乘积。

isnan

显示哪些元素是 NaN。

例子

>>> np.nanprod(1)
1
>>> np.nanprod([1])
1
>>> np.nanprod([1, np.nan])
1.0
>>> a = np.array([[1, 2], [3, np.nan]])
>>> np.nanprod(a)
6.0
>>> np.nanprod(a, axis=0)
array([3., 2.])