1 numpy.prod() [source]
np.prod()函数用来计算所有元素的乘积,对于有多个维度的数组可以指定轴,如axis=1指定计算每一行的乘积。
numpy.prod(a, axis=None, dtype=None, out=None, keepdims=<no value>, initial=<no value>, where=<no value>)
参数 | 描述 | 返回值 |
a | 输入arrays数组 | 一个形状为但已删除指定轴的数组。如果指定,返回对out的引用。 |
axis | 可选,指定求积的维度。默认值axis=None将计算输入数组中所有元素的乘积。如果轴为负数,则从最后一个轴计算到第一个轴。 | |
dtype | 可选,返回数组的类型,以及相乘元素的累加器的类型。 | |
out | ndarray,可选。用于放置结果的可选输出数组。它必须具有与预期输出相同的形状,但是输出值的类型将在必要时进行转换。 | |
keepdims | 可选,保持维度,不缩减 | |
initial | 可选,起始数,即返回的矩阵会在元素乘积上再乘起始数 | |
where | array_like of bool, optional |
2 栗子
- 默认情况下,计算所有元素的乘积:
import numpy as np
>>> np.prod([1.,2.])
2.0
- 空数组的乘积是1:
>>> np.prod([])
1.0
- 如果输入数组为二维的:
>>> np.prod([[1.,2.],[3.,4.]])
24
- 可以指定要相乘的轴:
>>> np.prod([[1.,2.],[3.,4.]], axis=1)
array([2.,12.])
- 如果要选择特定的元素相乘:
>>> np.prod([1., np.nan, 3.], where=[True, False, True])
3.0
- 可以设定一个初始值,与输入数组中的元素相乘:
>>> np.prod([1, 2], initial=5)
10
参考: