Поиск по сайту:

numpy.sum() в Python


Функция Python numpy sum() используется для получения суммы элементов массива по заданной оси.

Синтаксис функции Python numpy sum()

Синтаксис метода Python NumPy sum():

sum(array, axis, dtype, out, keepdims, initial)

  • Элементы массива используются для вычисления суммы.
  • Если ось не указана, возвращается сумма всех элементов. Если ось представляет собой кортеж целых чисел, возвращается сумма всех элементов в заданных осях.
  • Мы можем указать dtype, чтобы указать тип возвращаемых выходных данных.
  • Переменная out используется для указания массива для размещения результата. Это необязательный параметр.
  • Keepdims – это логический параметр. Если для этого параметра задано значение True, уменьшенные оси остаются в результате как измерения с размером один.
  • Начальный параметр указывает начальное значение суммы.

Python numpy sum() Примеры

Давайте посмотрим на некоторые примеры функции numpy sum().

1. Сумма всех элементов в массиве

Если мы передаем в функцию sum() только массив, он сглаживается и возвращается сумма всех элементов.

import numpy as np

array1 = np.array(
    [[1, 2],
     [3, 4],
     [5, 6]])

total = np.sum(array1)
print(f'Sum of all the elements is {total}')

Вывод: Сумма всех элементов равна 21

2. Сумма элементов массива вдоль оси

Если мы указываем значение оси, возвращается сумма элементов вдоль этой оси. Если форма массива (X, Y), то сумма по оси 0 будет иметь форму (1, Y). Сумма по оси 1 будет иметь форму (1, X).

import numpy as np

array1 = np.array(
    [[1, 2],
     [3, 4],
     [5, 6]])

total_0_axis = np.sum(array1, axis=0)
print(f'Sum of elements at 0-axis is {total_0_axis}')

total_1_axis = np.sum(array1, axis=1)
print(f'Sum of elements at 1-axis is {total_1_axis}')

Выход:

Sum of elements at 0-axis is [ 9 12]
Sum of elements at 1-axis is [ 3  7 11]

3. Указание типа выходных данных суммы

import numpy as np

array1 = np.array(
    [[1, 2],
     [3, 4]])

total_1_axis = np.sum(array1, axis=1, dtype=float)
print(f'Sum of elements at 1-axis is {total_1_axis}')

Вывод: Сумма элементов по оси 1 равна [3. 7.]

4. Начальное значение суммы

import numpy as np

array1 = np.array(
    [[1, 2],
     [3, 4]])

total_1_axis = np.sum(array1, axis=1, initial=10)
print(f'Sum of elements at 1-axis is {total_1_axis}')

Вывод: Сумма элементов по оси 1 равна [13 17] Ссылка: API Doc