Pilha NumPy()

Resumo : neste tutorial, você aprenderá como usar a stack()função NumPy para unir dois ou mais arrays em um único array.

Introdução à função NumPy stack()

A stack()função de duas ou mais matrizes em uma única matriz. Ao contrário da concatenate()função, a função stack() une arrays 1D para formar um array 2D e une arrays 2D para formar um array 3D.

O seguinte mostra a sintaxe da stack()função:

numpy.stack((a1,a2,...),axis=0)Linguagem de código:  Python  ( python )

Nesta sintaxe, (a1, a2,…) é uma sequência de arrays com ndarrayobjetos de tipo ou semelhantes a array. Todas as matrizes a1, a2, .. devem ter o mesmo formato.

O axisparâmetro especifica o eixo na matriz de resultados ao longo do qual a função empilha as matrizes de entrada. Por padrão, o eixo é zero, o que une as matrizes de entrada verticalmente.

Além da stack()função, NumPy também possui vstack()função que une dois ou mais arrays verticalmente e hstack()função que une dois ou mais arrays horizontalmente.

Exemplos de funções NumPy stack()

Vejamos alguns exemplos de uso da stack()função.

1) Usando a função stack() para unir arrays 1D

O exemplo a seguir usa a stack()função para unir dois arrays 1D:

import numpy as np

a = np.array([1, 2])
b = np.array([3, 4])

c = np.stack((a, b))
print(c)Linguagem de código:  Python  ( python )

Saída:

[[1 2] 
 [3 4]]Linguagem de código:  Python  ( python )
Matrizes 1d de pilha numpy

O exemplo a seguir usa a stack()função para unir dois arrays 1D horizontalmente usando o eixo 1:

import numpy as np

a = np.array([1, 2])
b = np.array([3, 4])

c = np.stack((a, b), axis=1)
print(c)Linguagem de código:  Python  ( python )

Saída:

[[1 3] 
 [2 4]]Linguagem de código:  Python  ( python )

2) Usando a função numpy stack() para unir arrays 2D

O exemplo a seguir usa a stack()função para unir elementos de duas matrizes 2D. O resultado é uma matriz 3D:

import numpy as np

a = np.array([
    [1, 2],
    [3, 4]
])
b = np.array([
    [5, 6],
    [7, 8]
])

c = np.stack((a, b))
print(c)
print(c.shape)Linguagem de código:  Python  ( python )
matrizes 2d de pilha numpy

Saída:

[[[1 2]
  [3 4]]
 [[5 6]
  [7 8]]]
(2, 2, 2)Linguagem de código:  Python  ( python )

Pilha NumPy() vs.

O exemplo a seguir ilustra a diferença entre stack()as concatenate()funções e:

a = np.array([1,2])
b = np.array([3,4])

c = np.concatenate((a,b)) # return 1-D array                    
d = np.stack((a,b)) # return 2-D array
print(c)
print(d)Linguagem de código:  PHP  ( php )

Saída:

[1 2 3 4]
[[1 2]
 [3 4]]Linguagem de código:  JSON/JSON com comentários  ( json )
pilha numpy vs concatenar

Neste exemplo, a função concatenate() une elementos de dois arrays ao longo de um eixo existente enquanto a stack()função une os dois arrays ao longo de um novo eixo .

Resumo

  • Use a função numpy stack()para unir dois ou mais arrays em um.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *