Метод cumprod
Метод cumprod класса ndarray вычисляет накопленное произведение элементов массива вдоль указанной оси. Метод возвращает новый массив, в котором каждый элемент представляет собой произведение всех предыдущих элементов исходного массива, включая текущий. Первым параметром метод принимает ось axis, по которой производится вычисление. Вторым параметром можно указать тип данных результирующего массива через dtype.
Синтаксис
arr.cumprod(axis=None, dtype=None)
Пример
Давайте вычислим накопленное произведение элементов одномерного массива:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
res = arr.cumprod()
print(res)
Результат выполнения кода:
[1 2 6 24 120]
Пример
Вычислим накопленное произведение для двумерного массива вдоль строк (ось 0):
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
res = arr.cumprod(axis=0)
print(res)
Результат выполнения кода:
[[1 2 3]
[4 10 18]]
Пример
Вычислим накопленное произведение для двумерного массива вдоль столбцов (ось 1):
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
res = arr.cumprod(axis=1)
print(res)
Результат выполнения кода:
[[1 2 6]
[4 20 120]]
Пример
Вычислим накопленное произведение с явным указанием типа данных:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
res = arr.cumprod(dtype=np.float64)
print(res)
Результат выполнения кода:
[1. 2. 6. 24. 120.]