numpy.sum() em Python

A função sum() do numpy em Python é usada para obter a soma dos elementos de uma matriz ao longo de um eixo específico.

Sintaxe da função sum() em Python numpy

A sintaxe do método sum() em Python NumPy é a seguinte:

sum(array, axis, dtype, out, keepdims, initial)
  • Os elementos da matriz são usados para calcular a soma.
  • Se o eixo não for fornecido, a soma de todos os elementos é retornada. Se o eixo for uma tupla de inteiros, a soma de todos os elementos nos eixos dados é retornada.
  • Podemos especificar o dtype para definir o tipo de dados de saída desejado.
  • A variável out é usada para especificar a matriz onde o resultado será colocado. Este é um parâmetro opcional.
  • O parâmetro keepdims é um booleano. Se definido como True, os eixos que foram reduzidos permanecem no resultado como dimensões com tamanho um.
  • O parâmetro initial especifica o valor inicial para a soma.

Exemplos da função sum() em Python numpy

Vamos ver alguns exemplos da função sum() do numpy.

1. Soma de todos os elementos no array

Se passarmos apenas o array na função sum(), ele é achatado e a soma de todos os elementos é retornada.

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}')

Saída: A soma de todos os elementos é 21

2. Soma dos elementos do array ao longo do eixo

Se especificarmos o valor do eixo, a soma dos elementos ao longo desse eixo é retornada. Se a forma do array for (X, Y), então a soma ao longo do eixo 0 será de forma (1, Y). A soma ao longo do eixo 1 será de forma (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}')

Saída:

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

3. Especificando o tipo de dados de saída da soma

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}')

Saída: A soma dos elementos no eixo 1 é [3. 7.]

4. Valor inicial para a soma

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}')

Saída: A soma dos elementos no eixo 1 é [13 17] Referência: Documento da API

Source:
https://www.digitalocean.com/community/tutorials/numpy-sum-in-python