Resumo : neste tutorial, você aprenderá como usar a prod()
função numpy para calcular o produto de números em um array.
Introdução à função NumPy prod()
Suponha que você tenha três números n, m e k. O produto dos três números é nxmxk. Por exemplo, o produto de 2, 3 e 4 é 2x3x4 = 24.
Para calcular os produtos de números em um array, você usa a prod()
função numpy:
numpy.prod(a, axis=None, dtype=None, out=None, keepdims=<no value>, initial=<no value>, where=<no value>)
Linguagem de código: Python ( python )
Exemplos de funções NumPy prod()
Vejamos alguns exemplos de uso da prod()
função numpy.
1) Usando a função numpy prod() com exemplo de array 1-D
O exemplo a seguir usa prod()
para calcular os produtos de números em uma matriz 1-D:
import numpy as np
a = np.arange(1, 5)
result = np.prod(a)
print(a)
print(f'result={result}')
Linguagem de código: Python ( python )
Saída:
[1 2 3 4]
result=24
Linguagem de código: Python ( python )
Como funciona.
Primeiro, crie um array que tenha 4 números de 1 a 4 usando a arange()
função.
a = np.arange(1, 5)
Linguagem de código: Python ( python )
Segundo, calcule os produtos de todos os números na matriz a:
result = np.prod(a)
Linguagem de código: Python ( python )
Terceiro, exiba os números da matriz a e seu produto:
print(a)
print(f'result={result}')
Linguagem de código: Python ( python )
Observe que você pode passar um objeto semelhante a um array para a prod()
função, por exemplo, uma lista. Por exemplo:
import numpy as np
result = np.prod([1, 2, 3, 4, 5])
print(f'result={result}')
Linguagem de código: Python ( python )
Saída:
result=120
Linguagem de código: Python ( python )
2) Usando a função numpy prod() com exemplos de array multidimensional
O exemplo a seguir usa prod()
para calcular produtos de todos os números em uma matriz 2D:
import numpy as np
result = np.prod([
[1, 2],
[3, 4]
])
print(f'result={result}')
Linguagem de código: Python ( python )
Saída:
result=24
Linguagem de código: Python ( python )
Para calcular o produto dos números de um eixo, você pode especificar o argumento do eixo. Por exemplo, o seguinte usa prod()
para calcular o produto de números no eixo 0:
import numpy as np
result = np.prod([
[1, 2],
[3, 4]
], axis=0)
print(f'result={result}')
Linguagem de código: Python ( python )
Saída:
result=[3 8]
Linguagem de código: Python ( python )
Da mesma forma, você pode calcular o produto dos números no eixo 1:
import numpy as np
result = np.prod([
[1, 2],
[3, 4]
], axis=1)
print(f'result={result}')
Linguagem de código: Python ( python )
Saída:
result=[ 2 12]
Linguagem de código: Python ( python )
3) Seleção de números para incluir no produto
Para selecionar um número específico para incluir no produto, você usa o argumento where. Por exemplo:
import numpy as np
a = np.array([np.nan, 3, 4])
result = np.prod(a, where=[False, True, True])
print(result)
Linguagem de código: Python ( python )
Saída:
12.0
Linguagem de código: Python ( python )
Neste exemplo, a matriz contém três elementos np.nan, 3 e 4.
O argumento where usa uma lista booleana para especificar qual elemento da matriz a deve ser incluído no produto.
Se o valor da where
lista for True
, o elemento correspondente da matriz de entrada será incluído no produto.
4) Casos especiais
Observe que se você passar um array de números inteiros para a
função que causa um overflow, o prod()
erro não será gerado. Por exemplo:prod()
import numpy as np
result = np.prod(np.arange(1, 100))
print(f'result={result}')
Linguagem de código: Python ( python )
Saída:
result=0
Linguagem de código: Python ( python )
A prod()
função retorna 1 se o array estiver vazio. Por exemplo:
import numpy as np
result = np.prod(np.array([]))
print(f'result={result}')
Linguagem de código: Python ( python )
Saída:
1.0
Linguagem de código: Python ( python )
Resumo
- Use
prod()
a função numpy para calcular o produto dos números em uma matriz.