NumPy – trabalho com arrays e matrizes

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

html

Introdução ao NumPy: Base para Computação Científica em Python

NumPy é uma biblioteca fundamental do Python para computação científica. Ela fornece suporte poderoso para arrays e matrizes multidimensionais, além de uma ampla gama de funções para trabalhar com eles. NumPy é uma ferramenta indispensável para analistas de dados, especialistas em machine learning e pesquisadores científicos.

NumPy permite processar eficientemente grandes volumes de dados e realizar operações matemáticas, substituindo loops por código compacto e vetorizado. A biblioteca inclui funções embutidas para álgebra linear e estatística.

Instalação e Importação da Biblioteca NumPy

Para começar a trabalhar com NumPy, é necessário instalá-la e importá-la para o seu projeto.

Instalação do NumPy

A instalação da biblioteca é feita com o

Tratamento de Valores Ausentes (NaN)

Para trabalhar com valores ausentes, NumPy usa np.nan.

arr = np.array([1, 2, np.nan, 4, 5])
print(np.isnan(arr)) # [False False  True False False]

Para tratar NaN, são usadas funções especiais, como nanmean(), nanstd(), nansum(), que ignoram os valores ausentes.

Desempenho do NumPy vs. Python Puro

NumPy é escrito em C e funciona significativamente mais rápido que o Python puro, especialmente ao realizar operações em grandes arrays. Isso se deve à vetorização eficiente e otimização.

import time
import numpy as np

size = 100000

# Python list
lista = list(range(size))
listb = list(range(size))

starttime = time.time()
resultpython = [a + b for a, b in zip(lista, listb)]
pythontime = time.time() - starttime

# NumPy array
anp = np.arange(size)
bnp = np.arange(size)

starttime = time.time()
resultnumpy = anp + bnp
numpytime = time.time() - starttime

print(f"Python time: {pythontime:.4f} seconds")
print(f"NumPy time: {numpytime:.4f} seconds")

A diferença de desempenho pode chegar a dezenas e centenas de vezes em grandes volumes de dados.

Casos de Uso Reais do NumPy

NumPy é usado em diversas áreas:

  • Ciência: processamento de dados experimentais
  • Finanças: análise de séries temporais
  • Machine Learning: preparação e normalização de dados, modelagem
  • Computação Gráfica: trabalho com imagens
  • Educação: visualização de funções matemáticas e algoritmos

Perguntas Frequentes (FAQ)

Como um array NumPy difere de uma lista Python?

Um array NumPy é uma estrutura de dados que armazena números em forma de tabelas (tensores), possui um tipo de dado fixo e suporta operações vetorizadas. A lista Python é mais flexível, mas menos eficiente para cálculos numéricos.

Como criar uma matriz nula de tamanho 3x3?

matrix = np.zeros((3, 3))

Como transpor uma matriz?

transposedmatrix = matrix.T

Como multiplicar matrizes?

result = matrix1 @ matrix2

Como encontrar a matriz inversa?

inversedmatrix = np.linalg.inv(matrix)

Categorias Principais de Funções do NumPy

NumPy fornece um amplo conjunto de funções para diversas tarefas:

  • Criação de arrays: NumPy oferece muitas funções para criar e inicializar arrays com diferentes valores iniciais (zeros, uns, números aleatórios, etc.).
  • Operações matemáticas: A biblioteca suporta várias operações matemáticas em arrays, incluindo operações aritméticas, funções estatísticas e funções de álgebra linear.
  • Funções de álgebra linear: NumPy fornece funções para realizar operações de álgebra linear, como multiplicação de matrizes, cálculo de autovalores, etc.
  • Funções trigonométricas e logarítmicas: A biblioteca oferece fun

Recommendations