Introdução
NumPy é uma biblioteca para a linguagem de programação Python, utilizada para realizar operações numéricas em Python. NumPy oferece uma maneira conveniente de trabalhar com dados numéricos através do uso de arrays multidimensionais. Neste tutorial, discutiremos como criar, acessar e modificar arrays NumPy, bem como explorar os diferentes tipos de dados disponíveis.
Criando Arrays
Abra um novo interpretador Python no Terminal.
python3
Antes de começarmos a trabalhar com arrays, precisamos criá-los. NumPy oferece vários métodos para criar arrays, como:
1. np.array()
Esta função cria um array a partir de uma lista ou tupla Python.
import numpy as np
## Criando um array a partir de uma lista Python
my_list = [1, 2, 3, 4, 5]
my_array = np.array(my_list)
print(my_array) ## Output: [1 2 3 4 5]
## Criando um array a partir de uma tupla Python
my_tuple = (6, 7, 8, 9, 10)
my_array = np.array(my_tuple)
print(my_array) ## Output: [ 6 7 8 9 10]
2. np.zeros()
Esta função cria um array de zeros com uma determinada forma (shape).
## Criando um array de zeros
my_array = np.zeros((3, 4))
print(my_array)
## Output:
## [[0. 0. 0. 0.]
## [0. 0. 0. 0.]
## [0. 0. 0. 0.]]
3. np.ones()
Esta função cria um array de uns com uma determinada forma (shape).
## Criando um array de uns
my_array = np.ones((2, 3))
print(my_array)
## Output:
## [[1. 1. 1.]
## [1. 1. 1.]]
4. np.arange()
Esta função cria um array com valores espaçados uniformemente dentro de um determinado intervalo.
## Criando um array com valores espaçados uniformemente
my_array = np.arange(0, 10, 2)
print(my_array) ## Output: [0 2 4 6 8]
5. np.linspace()
Esta função cria um array com valores espaçados uniformemente entre dois pontos finais.
## Criando um array com valores espaçados uniformemente entre dois pontos finais
my_array = np.linspace(0, 1, 5)
print(my_array) ## Output: [0. 0.25 0.5 0.75 1. ]
Acessando Elementos
Para acessar um elemento em um array unidimensional, podemos usar seu índice.
my_array = np.array([1, 2, 3, 4, 5])
print(my_array[0]) ## Output: 1
Para acessar um elemento em um array multidimensional, precisamos especificar sua posição em cada dimensão.
my_array = np.array([[1, 2], [3, 4], [5, 6]])
print(my_array[1, 0]) ## Output: 3
Modificando Elementos
Podemos modificar o valor de um elemento em um array atribuindo um novo valor a ele.
my_array = np.array([1, 2, 3])
my_array[2] = 4
print(my_array) ## Output: [1 2 4]
Também podemos modificar uma fatia (slice) de um array.
my_array = np.array([1, 2, 3, 4, 5])
my_array[1:4] = [6, 7, 8]
print(my_array) ## Output: [1 6 7 8 5]
Tipos de Dados
Arrays NumPy podem armazenar elementos de diferentes tipos de dados, como inteiros, floats e booleanos. NumPy oferece uma variedade de tipos de dados, incluindo:
| Tipo de Dado | Descrição |
|---|---|
| int_ | Inteiro |
| int8 | Inteiro de 8 bits |
| int16 | Inteiro de 16 bits |
| int32 | Inteiro de 32 bits |
| int64 | Inteiro de 64 bits |
| uint8 | Inteiro sem sinal de 8 bits |
| uint16 | Inteiro sem sinal de 16 bits |
| uint32 | Inteiro sem sinal de 32 bits |
| uint64 | Inteiro sem sinal de 64 bits |
| float_ | Número de ponto flutuante |
| float16 | Número de ponto flutuante de meia precisão |
| float32 | Número de ponto flutuante de precisão simples |
| float64 | Número de ponto flutuante de dupla precisão |
| complex_ | Número complexo |
| complex64 | Número complexo representado por dois floats de 32 bits |
| complex128 | Número complexo representado por dois floats de 64 bits |
| bool_ | Booleano |
| object_ | Objeto (pode conter qualquer objeto Python) |
Para especificar um tipo de dado para um array, podemos usar o parâmetro dtype.
## Creating an array with a specific data type
my_array = np.array([1, 2, 3], dtype=np.float64)
print(my_array) ## Output: [1. 2. 3.]
Também podemos converter um array para um tipo de dado diferente usando o método astype().
## Converting an array to a different data type
my_array = np.array([1, 2, 3], dtype=np.int32)
my_array = my_array.astype(np.float64)
print(my_array) ## Output: [1. 2. 3.]
Resumo
Neste tutorial, aprendemos como criar, acessar e modificar arrays NumPy, bem como explorar os diferentes tipos de dados disponíveis. NumPy é uma biblioteca poderosa para trabalhar com dados numéricos em Python e oferece muitas funções e métodos úteis para manipular arrays.



