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.
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