Resumo : neste tutorial, você aprenderá como acessar elementos de um array numpy usando índices.
Como uma lista , você pode usar a notação de colchetes( []
) para acessar elementos de um array numpy .
Indexação de matriz NumPy em matrizes 1-D
Ao longo de um único eixo, você pode selecionar elementos usando índices. O primeiro elemento começa com índice 0, o segundo elemento começa com índice 1 e assim por diante.
Além dos índices não negativos, você pode usar índices negativos para localizar elementos. Por exemplo, o último elemento tem um índice -1, o penúltimo elemento tem um índice -2 e assim por diante.
O exemplo a seguir mostra como acessar elementos de um array unidimensional:
import numpy as np
a = np.arange(0, 5)
print(a)
print(a[0])
print(a[1])
print(a[-1])
Linguagem de código: Python ( python )
Saída:
[0 1 2 3 4]
0
1
4
3
Linguagem de código: Python ( python )
Neste exemplo:
- O a[0] retorna o primeiro elemento (0)
- O a[1] retorna o segundo elemento (1)
- O a[-1] retorna o último elemento (4)
- O a[-2] retorna o penúltimo elemento (3)
Indexação de matriz NumPy em matrizes 2-D
Com matrizes 2D e multidimensionais, você pode selecionar elementos como faria com matrizes 1D, mas para cada dimensão (ou eixo). Por exemplo:
import numpy as np
a = np.array([
[1, 2, 3],
[4, 5, 6]
])
print(a.shape)
print(a[0]) # [1 2 3]
print(a[1]) # [4 5 6]
print(a[0, 0]) # 1
print(a[1, 0]) # 4
print(a[0, 2]) # 3
print(a[1, 2]) # 6
print(a[0, -1]) # 3
print(a[1, -1]) # 6
Linguagem de código: Python ( python )
Saída:
(2, 3)
[1 2 3]
[4 5 6]
1
4
3
6
3
6
Linguagem de código: Python ( python )
Neste exemplo, o array numpy a tem a forma (2,3), portanto, possui dois eixos:
- O primeiro eixo possui 2 elementos (2 listas)
- O segundo eixo possui três elementos (3 números)
A seguir explicamos como funciona a indexação de array:
- O a[0] retorna o primeiro elemento do primeiro eixo, que é [1 2 3].
- O a[1] retorna o segundo elemento do primeiro eixo, que é [4 5 6]
- O a[0, 0] = 1: 0 seleciona o primeiro elemento do primeiro eixo ([1 2 3]) e o primeiro elemento do segundo eixo.
- O a[1, 0] = 4: 1 seleciona o segundo elemento do primeiro eixo ([4 5 6]) e 0 seleciona o primeiro elemento do segundo eixo.
- O a[0, 2]) = 3: 0 seleciona o primeiro elemento do primeiro eixo ([1 2 3]) e 2 seleciona o terceiro elemento do segundo eixo.
- O a[1, 2] = 6: 1 seleciona o segundo elemento do primeiro eixo ([4 5 6]) e 2 seleciona o terceiro elemento do segundo eixo.
- O a[0, -1] = 3: 0 seleciona o primeiro elemento do primeiro eixo ([1 2 3]) e -1 seleciona o último elemento do segundo eixo.
- O a[1, -1] = 6: 1 seleciona o segundo elemento do primeiro eixo ([1 2 3]) e -1 seleciona o último elemento do segundo eixo.
Indexação de matriz NumPy em matrizes 3-D
O exemplo a seguir cria uma matriz numpy 3-D:
import numpy as np
a = np.array([
[[1, 2], [3, 4], [5, 6]],
[[5, 6], [7, 8], [9, 10]],
])
print(a.shape)
Linguagem de código: Python ( python )
Saída:
(2, 3, 2)
Linguagem de código: Python ( python )
A matriz possui três eixos.
- O primeiro eixo possui 2 elementos (2 listas de listas de números)
- O segundo eixo possui 3 elementos (3 listas de números)
- O terceiro eixo possui 2 elementos (2 números)
Por exemplo:
import numpy as np
a = np.array([
[[1, 2], [3, 4], [5, 6]],
[[5, 6], [7, 8], [9, 10]],
])
print(a[0, 0, 1]) # 2
Linguagem de código: Python ( python )
A seguinte expressão retorna 2:
a[0,0,1]
Linguagem de código: Python ( python )
O primeiro número 0 seleciona o primeiro elemento do primeiro eixo e retorna:
[[1, 2], [3, 4], [5, 6]]
Linguagem de código: Python ( python )
O segundo número 0 seleciona o primeiro elemento do segundo eixo e retorna:
[1, 2]
Linguagem de código: Python ( python )
O terceiro número (1) seleciona o segundo elemento do terceiro eixo que retorna 2.
Resumo
- Use a notação de colchetes [] com um índice para acessar elementos de uma matriz numpy.
- Use índices zero e positivos para começar a selecionar desde o início do array.
- Use índices negativos para começar a selecionar a partir do final do array.