Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Operações Matemáticas Básicas | Matemática com NumPy
Numpy Básico

bookOperações Matemáticas Básicas

Agora que você está familiarizado com o conceito de broadcasting, vamos discutir algumas operações matemáticas básicas no NumPy.

Operações Escalares

Lembre-se, o broadcasting permite realizar operações matemáticas entre dois arrays de formatos compatíveis ou entre um array e um escalar.

1234567891011
import numpy as np array = np.array([1, 2, 3, 4]) # Scalar addition result_add_scalar = array + 2 print(f'Scalar addition: {result_add_scalar}') # Scalar multiplication result_mul_scalar = array * 3 print(f'Scalar multiplication: {result_mul_scalar}') # Raising an array to a scalar power result_power_scalar = array ** 3 print(f'Scalar exponentiation: {result_power_scalar}')
copy

Como pode ser observado, cada operação é realizada elemento a elemento no array. Essencialmente, um escalar é transmitido para um array com o mesmo formato do nosso array original, onde todos os elementos possuem o mesmo valor. Portanto, a operação é executada em cada par de elementos correspondentes dos dois arrays.

Operações Entre Dois Arrays

Se os formatos de dois arrays forem compatíveis, a transmissão é realizada se necessário e, novamente, a operação ocorre elemento a elemento:

123456789101112
import numpy as np arr1 = np.array([1, 2, 3, 4]) arr2 = np.array([5, 6, 7, 8]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation: {result_power}')
copy

Divisão, subtração e outras operações aritméticas funcionam de maneira semelhante. Aqui está outro exemplo onde o segundo (direito) array é transmitido:

123456789101112
import numpy as np arr1 = np.array([[1, 2, 3], [4, 5, 6]]) arr2 = np.array([5, 6, 7]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation:\n{result_power}')
copy

arr_2 é transmitido para um array 2D com duas linhas idênticas, cada uma contendo o array [5, 6, 7].

Aplicações

Essas operações matemáticas são essenciais para tarefas como escalonamento, normalização e transformação de dados em aprendizado de máquina e análise estatística. Elas possibilitam operações eficientes elemento a elemento para combinar conjuntos de dados, realizar simulações numéricas e aplicar filtros em processamento de imagem e sinal. Além disso, essas operações são amplamente utilizadas em computação científica e aplicações orientadas a dados.

Tarefa

Swipe to start coding

Você está analisando os dados de vendas trimestrais de dois produtos em 2021 e 2022, armazenados em dois arrays 2D:

  • sales_data_2021: vendas trimestrais de cada produto em 2021, com cada linha representando um produto específico;
  • sales_data_2022: vendas trimestrais de cada produto em 2022, com cada linha representando um produto específico.

Calcule o crescimento da receita trimestral para cada produto em percentual.

Solução

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 2
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Suggested prompts:

Can you explain more about how broadcasting works with arrays of different shapes?

What happens if the shapes of the arrays are not compatible for broadcasting?

Can you give more real-world examples where broadcasting is useful?

close

bookOperações Matemáticas Básicas

Deslize para mostrar o menu

Agora que você está familiarizado com o conceito de broadcasting, vamos discutir algumas operações matemáticas básicas no NumPy.

Operações Escalares

Lembre-se, o broadcasting permite realizar operações matemáticas entre dois arrays de formatos compatíveis ou entre um array e um escalar.

1234567891011
import numpy as np array = np.array([1, 2, 3, 4]) # Scalar addition result_add_scalar = array + 2 print(f'Scalar addition: {result_add_scalar}') # Scalar multiplication result_mul_scalar = array * 3 print(f'Scalar multiplication: {result_mul_scalar}') # Raising an array to a scalar power result_power_scalar = array ** 3 print(f'Scalar exponentiation: {result_power_scalar}')
copy

Como pode ser observado, cada operação é realizada elemento a elemento no array. Essencialmente, um escalar é transmitido para um array com o mesmo formato do nosso array original, onde todos os elementos possuem o mesmo valor. Portanto, a operação é executada em cada par de elementos correspondentes dos dois arrays.

Operações Entre Dois Arrays

Se os formatos de dois arrays forem compatíveis, a transmissão é realizada se necessário e, novamente, a operação ocorre elemento a elemento:

123456789101112
import numpy as np arr1 = np.array([1, 2, 3, 4]) arr2 = np.array([5, 6, 7, 8]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation: {result_power}')
copy

Divisão, subtração e outras operações aritméticas funcionam de maneira semelhante. Aqui está outro exemplo onde o segundo (direito) array é transmitido:

123456789101112
import numpy as np arr1 = np.array([[1, 2, 3], [4, 5, 6]]) arr2 = np.array([5, 6, 7]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation:\n{result_power}')
copy

arr_2 é transmitido para um array 2D com duas linhas idênticas, cada uma contendo o array [5, 6, 7].

Aplicações

Essas operações matemáticas são essenciais para tarefas como escalonamento, normalização e transformação de dados em aprendizado de máquina e análise estatística. Elas possibilitam operações eficientes elemento a elemento para combinar conjuntos de dados, realizar simulações numéricas e aplicar filtros em processamento de imagem e sinal. Além disso, essas operações são amplamente utilizadas em computação científica e aplicações orientadas a dados.

Tarefa

Swipe to start coding

Você está analisando os dados de vendas trimestrais de dois produtos em 2021 e 2022, armazenados em dois arrays 2D:

  • sales_data_2021: vendas trimestrais de cada produto em 2021, com cada linha representando um produto específico;
  • sales_data_2022: vendas trimestrais de cada produto em 2022, com cada linha representando um produto específico.

Calcule o crescimento da receita trimestral para cada produto em percentual.

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 2
single

single

some-alt