¿Cómo concatenar dos arrays NumPy bidimensionales?

A veces puede ser útil o necesario concatenar o fusionar dos o más de estas arrays NumPy . En este artículo, discutiremos varios métodos para concatenar dos arreglos 2D. Pero primero, tenemos que importar el paquete NumPy para usarlo:

# import numpy package
import numpy as np

Luego, se deben crear dos arrays 2D para realizar las operaciones, utilizando y funciones. Usando NumPy, podemos realizar la concatenación de múltiples arrays 2D de varias formas y métodos.

Método 1: Uso de la función

Podemos realizar la operación de concatenación usando la función. Con esta función, los arreglos se concatenan ya sea por filas o por columnas, dado que tienen filas o columnas iguales respectivamente. La concatenación por columnas se puede realizar equiparando el eje con 1 como argumento en la función.

Ejemplo:

Python

# Program to concatenate two 2D arrays column-wise
# import numpy
import numpy as np
 
# Creating two 2D arrays
arr1 = np.arange(1,10).reshape(3,3)
arr2 = np.arange(10,19).reshape(3,3)
arr1
arr2
 
# Concatenating operation
# axis = 1 implies that it is being done column-wise
np.concatenate((arr1,arr2),axis=1)

Producción:

array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])
       
array([[10, 11, 12],
       [13, 14, 15],
       [16, 17, 18]])
       
array([[ 0,  1,  2, 10, 11, 12],
       [ 3,  4,  5, 13, 14, 15],
       [ 6,  7,  8, 16, 17, 18]])

De la misma manera, la concatenación por filas se puede hacer igualando el eje a 0.

Ejemplo:

Python

# Program to concatenate two 2D arrays row-wise
import numpy as np
 
# Creating two 2D arrays
arr1 = np.arange(1, 10).reshape(3, 3)
arr2 = np.arange(10, 19).reshape(3, 3)
 
# Concatenating operation
# axis = 0 implies that it is being done row-wise
np.concatenate((arr1, arr2), axis=0)

Producción:

array([[ 0,  1,  2],
       [ 3,  4,  5],
       [ 6,  7,  8],
       [10, 11, 12],
       [13, 14, 15],
       [16, 17, 18]])

Método 2: Uso de funciones:

La función stack() se puede usar de la misma manera que la función donde el eje se iguala a uno. Las arrays se apilan una sobre la otra usando this.

Ejemplo:

Python

# Program to concatenate two 2D arrays row-wise
import numpy as np
 
 
arr1 = np.arange(1, 10).reshape(3, 3)
arr2 = np.arange(10, 19).reshape(3, 3)
 
# Concatenating operation
# axis = 1 implies that it is being
# done row-wise
np.stack((arr1, arr2), axis=1)

Producción:
 

array([[[ 1,  2,  3],
        [10, 11, 12]],

       [[ 4,  5,  6],
        [13, 14, 15]],

       [[ 7,  8,  9],
        [16, 17, 18]]])

O al igualar el eje a 2, la concatenación se realiza junto con la altura, como se muestra a continuación.

Ejemplo:

Python3

# Program to concatenate two 2D arrays along
# the height
import numpy as np
 
arr1 = np.arange(1, 10).reshape(3, 3)
arr2 = np.arange(10, 19).reshape(3, 3)
 
# Concatenating operation
# axis = 2 implies that it is being done
# along the height
np.stack((arr1, arr2), axis=2)

Producción:

array([[[ 1, 10],
        [ 2, 11],
        [ 3, 12]],

       [[ 4, 13],
        [ 5, 14],
        [ 6, 15]],

       [[ 7, 16],
        [ 8, 17],
        [ 9, 18]]])

Método 3: Uso de la función

La función apila la array horizontalmente, es decir, a lo largo de una columna.

Ejemplo:

Python

# Program to concatenate two 2D arrays
# horizontally
import numpy as np
 
 
arr1 = np.arange(1, 10).reshape(3, 3)
arr2 = np.arange(10, 19).reshape(3, 3)
 
# Concatenating operation
arr = np.hstack((arr1, arr2))

Producción:

array([[ 0,  1,  2, 10, 11, 12],
       [ 3,  4,  5, 13, 14, 15],
       [ 6,  7,  8, 16, 17, 18]])

Método 4: Uso de la función

La función apila arrays verticalmente, es decir, a lo largo de una fila.

Ejemplo:

Python

# Program to concatenate two 2D arrays
# vertically
import numpy as np
 
arr1 = np.arange(1, 10).reshape(3, 3)
arr2 = np.arange(10, 19).reshape(3, 3)
 
# Concatenating operation
arr = np.vstack((arr1, arr2))

Producción:

array([[ 0,  1,  2],
       [ 3,  4,  5],
       [ 6,  7,  8],
       [10, 11, 12],
       [13, 14, 15],
       [16, 17, 18]])

Método 5: Uso de la función

En la función, d representa la profundidad y las concatenaciones ocurren junto con la altura como se muestra a continuación:

Ejemplo:

Python

# Program to concatenate two 2D arrays
# along the height
import numpy as np
 
arr1 = np.arange(1, 10).reshape(3, 3)
arr2 = np.arange(10, 19).reshape(3, 3)
 
# Concatenating operation
arr = np.dstack((arr1, arr2))

Producción:

array([[[ 1, 10],
        [ 2, 11],
        [ 3, 12]],

       [[ 4, 13],
        [ 5, 14],
        [ 6, 15]],

       [[ 7, 16],
        [ 8, 17],
        [ 9, 18]]])

Método 6 : Usar la función column_stack()

La función column_stack() apila la array horizontalmente, es decir, a lo largo de una columna, generalmente se usa para concatenar arrays de identificación en arrays 2d uniéndolas horizontalmente.

Python3

import numpy
 
 
array1 = numpy.array([[1, 2, 3, 4, 5],[20,30,40,50,60]])
array2 = numpy.array([[6, 7, 8, 9, 10],[9,8,7,6,5]])
 
# Stack arrays horizontally.
array1 = numpy.column_stack([array1, array2])
print(array1)

Producción:

[[ 1  2  3  4  5  6  7  8  9 10]

 [20 30 40 50 60  9  8  7  6  5]]

Publicación traducida automáticamente

Artículo escrito por akshayvarma72 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *