Spec-Zone.ru › NumPy 2.0

numpy.prod

numpy.prod(a, axis=None, dtype=None, out=None, keepdims=<no value>, initial=<no value>, where=<no value>)[source]

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

Параметры:
aarray_like

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

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

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

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

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

dtypedtype, необязательно

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

outndarray, необязательно

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

keepdimsbool, необязательно

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

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

initialскаляр, необязательно

Начальное значение для этого произведения. См. reduce для получения подробной информации.

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

wherearray_like типа bool, необязательно

Элементы, которые нужно включить в произведение. См. reduce для получения подробной информации.

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

Возвращает:
product_along_axisndarray, см. параметр dtype выше.

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

См. также

ndarray.prod

эквивалентный метод

Определение типа выходных данных

Примечания

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

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

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

>>> np.prod([])
1.0

Примеры

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

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

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

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

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

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

Или выбрать определённые элементы для включения:

>>> np.prod([1., np.nan, 3.], where=[True, False, True])
3.0

Если тип 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 == int
True

Вы также можете начать произведение с значения, отличного от единицы:

>>> np.prod([1, 2], initial=5)
10

© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.prod.html

Spec-Zone.ru

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