Spec-Zone.ru › NumPy 1.12

numpy.prod

numpy.prod(a, axis=None, dtype=None, out=None, keepdims=<class numpy._globals._NoValue at 0x40b6a26c>) [source]

Возвращает произведение элементов массива по заданной оси.

Параметры:

a : array_like

Входные данные.

axis : None или int или кортеж из целых чисел, необязательно

Ось или оси, по которым выполняется произведение. По умолчанию, axis=None, вычисляется произведение всех элементов входного массива. Если axis отрицательный, он отсчитывается от последней к первой оси.

Введено в версии 1.7.0.

Если axis является кортежем целых чисел, произведение вычисляется по всем осям, указанным в кортеже, а не по одной оси или всем осям, как раньше.

dtype : dtype, необязательно

Тип возвращаемого массива, а также накопителя, в котором элементы перемножаются. Тип dtype a используется по умолчанию, если a имеет целочисленный тип с меньшей точностью, чем по умолчанию. В этом случае, если a со знаком, используется целочисленный тип платформы, а если a без знака, используется целое без знака той же точности, что и целое платформы.

out : ndarray, необязательно

Альтернативный выходной массив, в который поместить результат. Он должен иметь такую же форму, как ожидаемый результат, но тип выходных значений будет преобразован при необходимости.

keepdims : bool, необязательно

Если это True, оси, которые были уменьшены, остаются в результате как измерения с размером один. С этим параметром результат будет корректно транслироваться относительно входного массива.

Если передано значение по умолчанию, то keepdims не будет передано в метод prod подклассов ndarray, однако любое отличное от значения по умолчанию значение будет. Если метод подклассов sum не реализует keepdims, будут подняты исключения.

Возвращает:

product_along_axis : ndarray, см. параметр dtype выше.

Массив с формой a, но со специфической осью удаленной. Возвращает ссылку на out при указании.

См. также

ndarray.prod
эквивалентный метод
numpy.doc.ufuncs
Раздел «Аргументы вывода»

Примечания

Арифметика является модульной при использовании целочисленных типов, и при переполнении не возникает ошибок. Это означает, что на 32-битной платформе:

>>> x = np.array([536870910, 536870910, 536870910, 536870910])
>>> np.prod(x) #random
16

Произведение пустого массива является нейтральным элементом 1:

>>> np.prod([])
1.0

Примеры

По умолчанию вычисляется произведение всех элементов:

>>> np.prod([1.,2.])
2.0

Даже когда входной массив двумерный:

>>> np.prod([[1.,2.],[3.,4.]])
24.0

Но мы также можем указать ось, по которой нужно перемножать:

>>> np.prod([[1.,2.],[3.,4.]], axis=1)
array([  2.,  12.])

Если тип x беззнаковый, то тип выходных данных — беззнаковое целое платформы:

>>> x = np.array([1, 2, 3], dtype=np.uint8)
>>> np.prod(x).dtype == np.uint
True

Если x со знаком, то тип выходных данных — целочисленный тип платформы по умолчанию:

>>> x = np.array([1, 2, 3], dtype=np.int8)
>>> np.prod(x).dtype == np.int
True

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.12.0/reference/generated/numpy.prod.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API