Функция cumsum
Функция cumsum вычисляет кумулятивную сумму элементов массива.
Она возвращает новый массив, где каждый элемент является суммой всех предыдущих элементов
включая текущий. Первым параметром функция принимает массив,
вторым параметром можно указать ось (axis), вдоль которой выполняется накопление.
Третьим параметром можно задать тип данных результата (dtype).
Синтаксис
np.cumsum(arr, [axis], [dtype])
Пример
Вычислим кумулятивную сумму для одномерного массива:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
res = np.cumsum(arr)
print(res)
Результат выполнения кода:
[ 1 3 6 10 15]
Пример
Вычислим кумулятивную сумму для двумерного массива вдоль оси по умолчанию (массив сплющивается):
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
res = np.cumsum(arr)
print(res)
Результат выполнения кода:
[ 1 3 6 10 15 21]
Пример
Вычислим кумулятивную сумму вдоль строк (ось 0):
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
res = np.cumsum(arr, axis=0)
print(res)
Результат выполнения кода:
[[1 2 3]
[5 7 9]]
Пример
Вычислим кумулятивную сумму вдоль столбцов (ось 1):
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
res = np.cumsum(arr, axis=1)
print(res)
Результат выполнения кода:
[[ 1 3 6]
[ 4 9 15]]
Пример
Зададим тип данных результата как float:
import numpy as np
arr = np.array([1, 2, 3, 4])
res = np.cumsum(arr, dtype=np.float64)
print(res)
Результат выполнения кода:
[1. 3. 6. 10.]