Como mapear uma função para um array numpy (com exemplos)
Você pode usar a seguinte sintaxe básica para mapear uma função para um array NumPy:
#define function
my_function = lambda x: x*5
#map function to every element in NumPy array
my_function(my_array)
Os exemplos a seguir mostram como usar essa sintaxe na prática.
Exemplo 1: Mapeamento de função para um array NumPy unidimensional
O código a seguir mostra como mapear uma função para um array NumPy que multiplica cada valor por 2 e depois adiciona 5:
import numpy as np #create NumPy array data = np. array ([1, 3, 4, 4, 7, 8, 13, 15]) #define function my_function = lambda x: x*2+5 #apply function to NumPy array my_function(data) array([ 7, 11, 13, 13, 19, 21, 31, 35])
Veja como cada valor na nova tabela foi calculado:
- Primeiro valor: 1*2+5 = 7
- Segundo valor: 3*2+5 = 11
- Terceiro valor: 4*2+5 = 13
E assim por diante.
Exemplo 2: Mapeamento de função para um array NumPy multidimensional
O código a seguir mostra como mapear uma função para um array NumPy multidimensional que multiplica cada valor por 2 e depois adiciona 5:
import numpy as np #create NumPy array data = np. array ([[1, 2, 3, 4], [5, 6, 7, 8]]) #view NumPy array print (data) [[1 2 3 4] [5 6 7 8]] #define function my_function = lambda x: x*2+5 #apply function to NumPy array my_function(data) array([[ 7, 9, 11, 13], [15, 17, 19, 21]])
Observe que esta sintaxe funciona tão bem com um array multidimensional quanto com um array unidimensional.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras operações comuns no NumPy:
Como adicionar uma coluna a um array NumPy
Como converter um array NumPy em uma lista em Python
Como exportar um array NumPy para um arquivo CSV