Convertir array 3D en array 2D en Python

Muhammad Maisam Abbas 12 abril 2021
Convertir array 3D en array 2D en Python

En este tutorial, discutiremos la conversión de un array 3D a un array 2D en Python.

Convierta un array 3D en un array 2D con la función numpy.reshape() en Python

La función numpy.reshape() cambia la forma de un array sin cambiar sus datos. numpy.reshape() devuelve un array con las dimensiones especificadas. Por ejemplo, si tenemos un array 3D con dimensiones (4, 2, 2) y queremos convertirla en un array 2D con dimensiones (4, 4).

El siguiente ejemplo de código nos muestra cómo podemos usar la función numpy.reshape() para convertir un array 3D con dimensiones (4, 2, 2) en un array 2D con dimensiones (4, 4) en Python.

import numpy

arr = numpy.array(
    [[[0, 1], [2, 3]], [[4, 5], [6, 7]], [[8, 9], [10, 11]], [[12, 13], [14, 15]]]
)
newarr = arr.reshape(4, 2 * 2)
print(newarr)

Producción :

[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

En el código anterior, primero inicializamos un array 3D arr usando la función numpy.array() y luego la convertimos en un array 2D newarr con la función numpy.reshape().

El siguiente ejemplo de código muestra otra forma de hacer lo mismo si, por alguna razón, no conocemos las dimensiones exactas del array 3D.

import numpy

arr = numpy.array(
    [[[0, 1], [2, 3]], [[4, 5], [6, 7]], [[8, 9], [10, 11]], [[12, 13], [14, 15]]]
)
newarr = arr.reshape(arr.shape[0], (arr.shape[1] * arr.shape[2]))
print(newarr)

Producción :

[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

En el código anterior, usamos la función numpy.shape() para especificar las dimensiones del newarr. La función numpy.shape() devuelve una tupla que contiene el número de elementos en cada dimensión de un array.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - NumPy Array