Numpy es un paquete de Python que consta de objetos de array multidimensional y una colección de operaciones o rutinas para realizar varias operaciones en la array y el procesamiento de la array. Este paquete consiste en una función llamada numpy.reshape que se usa para convertir una array 1-D en una array 2-D de dimensiones requeridas (nxm). Esta función da una nueva forma requerida sin cambiar los datos de la array 1-D.
Sintaxis: numpy.reshape(array, nueva_forma, orden)
Parámetros:
- array: es la array 1-D dada a la que se le dará una nueva forma o se convertirá en una array 2-D
- new_shape: es la forma requerida o la array 2-D que tiene un int o una tupla de int
- orden : ‘C’ para estilo C, ‘F’ para estilo Fortran, ‘A’ si los datos están en estilo Fortran, entonces ordene Fortran como si no fuera estilo C.
Ejemplos 1:
Python3
import numpy as np # 1-D array having elements [1 2 3 4 5 6 7 8] arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) # Print the 1-D array print ('Before reshaping:') print (arr) print ('\n') # Now we can convert this 1-D array into 2-D in two ways # 1. having dimension 4 x 2 arr1 = arr.reshape(4, 2) print ('After reshaping having dimension 4x2:') print (arr1) print ('\n') # 2. having dimension 2 x 4 arr2 = arr.reshape(2, 4) print ('After reshaping having dimension 2x4:') print (arr2) print ('\n')
Producción:
Before reshaping: [1 2 3 4 5 6 7 8] After reshaping having dimension 4x2: [[1 2] [3 4] [5 6] [7 8]] After reshaping having dimension 2x4: [[1 2 3 4] [5 6 7 8]]
Ejemplo 2: veamos una observación importante sobre si podemos remodelar una array 1-D en cualquier array 2-D.
Python3
import numpy as np # 1-D array having elements [1 2 3 4 5 6 7 8] arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) # Print the 1-D array print('Before reshaping:') print(arr) print('\n') # let us try to convert into 2-D array having dimension 3x3 arr1 = arr.reshape(3, 3) print('After reshaping having dimension 3x3:') print(arr1) print('\n')
Producción:
Esto concluye que el número de elementos debe ser igual al producto de la dimensión, es decir, 3×3=9 pero el total de elementos = 8;
Ejemplo 3: Otro ejemplo es que podemos usar el método de remodelación sin especificar el número exacto para una de las dimensiones. Simplemente pase -1 como valor y NumPy calculará el número.
Python3
import numpy as np # 1-D array having elements [1 2 3 4 5 6 7 8] arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) # Print the 1-D array print('Before reshaping:') print(arr) print('\n') arr1 = arr.reshape(2, 2, -1) print('After reshaping:') print(arr1) print('\n')
Producción:
Before reshaping: [1 2 3 4 5 6 7 8] After reshaping: [[[1 2] [3 4]] [[5 6] [7 8]]]
Publicación traducida automáticamente
Artículo escrito por TanmayChakraborty y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA