Pular para o conteúdo principal
Documentos
noções básicasCriação de matriz

Introdução ao NumPy

NumPy é uma biblioteca poderosa para computação numérica em Python, que oferece suporte para matrizes e tabelas, além de um monte de funções matemáticas para trabalhar com essas estruturas de dados. É essencial para tarefas de manipulação de dados e computação científica, servindo de base para outras bibliotecas como SciPy e Pandas.

Uso

Os fundamentos do NumPy são usados para criar e manipular matrizes, permitindo um cálculo eficiente e o manuseio de dados. Ajuda a fazer operações matemáticas em grandes conjuntos de dados com rapidez e facilidade.

import numpy as np
# Create a simple array
array = np.array([1, 2, 3, 4, 5]) # Initializes a 1D array with integers 

Nessa sintaxe,np.array() é usado para inicializar uma matriz NumPy, um dos principais componentes do NumPy. Você pode especificar o tipo de dados da matriz com odtypeargumento, se necessário.

Exemplos

1. Criando uma matriz NumPy

import numpy as np
# Create a 1D array
array = np.array([1, 2, 3, 4, 5])
print(array) # Outputs: [1 2 3 4 5] 

Esse exemplo mostra como criar uma matriz NumPy unidimensional e exibir seus elementos.

2. Operações com matrizes

import numpy as np

# Create two arrays
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

# Element-wise addition
result = a + b
print(result) # Outputs: [5 7 9]

Esse exemplo mostra operações aritméticas básicas em duas matrizes, onde é feita a soma elemento a elemento.

3. Matrizes multidimensionais

import numpy as np

# Create a 2D array (matrix)
matrix = np.array([[1, 2, 3], [4, 5, 6]])
print(matrix) # Outputs the matrix

# Access an element
element = matrix[1, 2]
print(element) # Outputs: 6

Neste exemplo, uma matriz bidimensional (ou tabela) é criada e um elemento específico é acessado usando seus índices.

4. Remodelando matrizes

import numpy as np

# Create a 1D array
array = np.array([1, 2, 3, 4, 5, 6])

# Reshape the array to 2x3
reshaped_array = array.reshape(2, 3)
print(reshaped_array) # Outputs a reshaped 2D array

Esse exemplo mostra como transformar uma matriz unidimensional em uma matriz bidimensional.

5. Transmissão

import numpy as np

# Create an array
a = np.array([1, 2, 3])

# Add a scalar to each element using broadcasting
result = a + 5
print(result)  # Outputs: [6 7 8]

A transmissão permite que o NumPy faça operações em matrizes de diferentes formatos, “esticando” a matriz menor no formato da matriz maior.

Dicas e melhores práticas

  • Use operações vetorizadas. Aproveite a capacidade do NumPy de fazer operações em matrizes inteiras sem loops explícitos para um desempenho melhor. Operações vetorizadas são quando você aplica uma função ou operação em toda uma matriz de uma vez só.
  • Inicialize as matrizes de forma eficiente. Use funções como np.zeros(), np.ones(), ounp.arange() para inicializar rapidamente uma matriz.
  • Acesse os elementos da matriz com cuidado. Use o corte e a indexação para mexer em matrizes sem criar cópias desnecessárias.
  • Fica atento às formas das matrizes. Garanta a compatibilidade entre os formatos das matrizes ao realizar operações para evitar erros. Formas incompatíveis podem causar erros, que muitas vezes podem ser resolvidos remodelando ou transmitindo.
  • Use a transmissão. Aproveite o recurso de transmissão do NumPy para fazer operações em matrizes de diferentes formatos.

Erros e armadilhas comuns

  • Incompatibilidades de formato: Certifique-se de que as dimensões das matrizes sejam compatíveis para as operações. Use o redimensionamento ou a difusão para resolver os problemas.
  • Incompatibilidades de tipos de dados: Fica ligado nos tipos de dados nas tuas matrizes (dtype) pra evitar comportamentos inesperados, principalmente com tipos misturados.