Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Reorganización de Arreglos | Funciones Comúnmente Utilizadas de NumPy
Numpy Definitivo

bookReorganización de Arreglos

El redimensionamiento de arreglos en NumPy permite cambiar la forma de un arreglo mientras se conservan todos los elementos. Es una operación comúnmente utilizada en aprendizaje automático, ya que muchas funciones y métodos de las bibliotecas de aprendizaje automático requieren que los arreglos tengan una forma específica.

Formas de los arreglos

Note
Definición

La forma de un arreglo NumPy es una tupla que indica el número de elementos en cada dimensión (eje).

Por ejemplo, un array unidimensional de longitud 5 tiene una forma de (5,), mientras que un array bidimensional con 3 filas y 4 columnas tiene una forma de (3, 4):

1234
import numpy as np array_1d = np.array([5, 7, 1, 10, 9]) array_2d = np.zeros((3, 4)) print(array_1d.shape, array_2d.shape)
copy

ndarray.reshape()

Los arrays de NumPy tienen un método .reshape() para cambiar su forma. Solo es necesario pasar la forma del array resultante, ya sea como un entero, una tupla de enteros o enteros como argumentos separados.

Este método no modifica el array en el lugar, sino que devuelve un nuevo array.

Note
Nota

De hecho, .reshape() devuelve una vista del arreglo original, por lo que cualquier cambio realizado en el arreglo reestructurado también afectará al arreglo original.

123456789
import numpy as np # Creating a 1D array from 0 to 11 inclusive array = np.arange(12) # Reshaping the array to a 3x4 2D array (matrix) reshaped_array_2d = array.reshape(3, 4) print(reshaped_array_2d) # Reshaping the array to a 2x2x3 3D array reshaped_array_3d = array.reshape(2, 2, 3) print(reshaped_array_3d)
copy
Note
Nota

La cantidad de elementos en el arreglo reestructurado debe ser la misma que en el arreglo original, por lo que no se puede pasar una forma arbitraria.

En nuestro ejemplo, cambiar la forma del arreglo a 3 filas y 4 columnas (3x4) o a una forma de 2 bloques, cada uno con 2 filas y 3 columnas (2x2x3) sigue resultando en un total de 12 elementos.

Cambio de forma con -1

En NumPy, cuando se utiliza -1 en el método .reshape(), automáticamente calcula el tamaño de esa dimensión en función del tamaño original del arreglo, manteniendo el número total de elementos igual.

El uso de .reshape(-1, 1) es especialmente útil en aprendizaje automático cuando se necesita transformar un arreglo unidimensional en un arreglo bidimensional con una columna. El número de filas en este caso es igual al número de elementos (calculado automáticamente).

123456
import numpy as np # Creating a 1D array from 0 to 4 inclusive array = np.arange(5) # Reshaping the array to a 2D array with one column reshaped_array = array.reshape(-1, 1) print(reshaped_array)
copy

El arreglo reestructurado se almacena como un arreglo 2D con 5 filas y 1 columna, teniendo la forma (5, 1). En contraste, el arreglo 1D inicial tiene la forma (5,), que es una tupla con un solo elemento. Para cualquier arreglo 1D, la forma siempre es (n,), donde n representa la cantidad de elementos.

numpy.reshape()

La función reshape() en NumPy es idéntica al método .reshape(), pero se debe pasar un arreglo como su primer argumento. Para el parámetro shape, se puede pasar una tupla de enteros o un solo entero, por ejemplo, np.reshape(array, (3, 4)):

123456
import numpy as np # Creating a 1D array from 0 to 11 inclusive array = np.arange(12) # Reshaping the array to a 3x4 2D array (matrix) reshaped_array_2d = np.reshape(array, (3, 4)) print(reshaped_array_2d)
copy
Tarea

Swipe to start coding

Dispone de un array sales_data_2021 con datos simulados de ventas trimestrales para dos productos en 2021. Los primeros 4 elementos representan las ventas trimestrales del primer producto, y los últimos 4 elementos representan las ventas trimestrales del segundo producto.

  1. Utilice el método apropiado de sales_data_2021 para reorganizarlo en un array 2D.
  2. La primera fila debe contener las ventas trimestrales del primer producto.
  3. La segunda fila debe contener las ventas trimestrales del segundo producto.

Solución

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 4
single

single

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

Can you explain the difference between using .reshape() and np.reshape()?

What happens if I try to reshape an array to a shape that doesn't match the total number of elements?

Can you give more examples of reshaping arrays with different dimensions?

close

Awesome!

Completion rate improved to 3.7

bookReorganización de Arreglos

Desliza para mostrar el menú

El redimensionamiento de arreglos en NumPy permite cambiar la forma de un arreglo mientras se conservan todos los elementos. Es una operación comúnmente utilizada en aprendizaje automático, ya que muchas funciones y métodos de las bibliotecas de aprendizaje automático requieren que los arreglos tengan una forma específica.

Formas de los arreglos

Note
Definición

La forma de un arreglo NumPy es una tupla que indica el número de elementos en cada dimensión (eje).

Por ejemplo, un array unidimensional de longitud 5 tiene una forma de (5,), mientras que un array bidimensional con 3 filas y 4 columnas tiene una forma de (3, 4):

1234
import numpy as np array_1d = np.array([5, 7, 1, 10, 9]) array_2d = np.zeros((3, 4)) print(array_1d.shape, array_2d.shape)
copy

ndarray.reshape()

Los arrays de NumPy tienen un método .reshape() para cambiar su forma. Solo es necesario pasar la forma del array resultante, ya sea como un entero, una tupla de enteros o enteros como argumentos separados.

Este método no modifica el array en el lugar, sino que devuelve un nuevo array.

Note
Nota

De hecho, .reshape() devuelve una vista del arreglo original, por lo que cualquier cambio realizado en el arreglo reestructurado también afectará al arreglo original.

123456789
import numpy as np # Creating a 1D array from 0 to 11 inclusive array = np.arange(12) # Reshaping the array to a 3x4 2D array (matrix) reshaped_array_2d = array.reshape(3, 4) print(reshaped_array_2d) # Reshaping the array to a 2x2x3 3D array reshaped_array_3d = array.reshape(2, 2, 3) print(reshaped_array_3d)
copy
Note
Nota

La cantidad de elementos en el arreglo reestructurado debe ser la misma que en el arreglo original, por lo que no se puede pasar una forma arbitraria.

En nuestro ejemplo, cambiar la forma del arreglo a 3 filas y 4 columnas (3x4) o a una forma de 2 bloques, cada uno con 2 filas y 3 columnas (2x2x3) sigue resultando en un total de 12 elementos.

Cambio de forma con -1

En NumPy, cuando se utiliza -1 en el método .reshape(), automáticamente calcula el tamaño de esa dimensión en función del tamaño original del arreglo, manteniendo el número total de elementos igual.

El uso de .reshape(-1, 1) es especialmente útil en aprendizaje automático cuando se necesita transformar un arreglo unidimensional en un arreglo bidimensional con una columna. El número de filas en este caso es igual al número de elementos (calculado automáticamente).

123456
import numpy as np # Creating a 1D array from 0 to 4 inclusive array = np.arange(5) # Reshaping the array to a 2D array with one column reshaped_array = array.reshape(-1, 1) print(reshaped_array)
copy

El arreglo reestructurado se almacena como un arreglo 2D con 5 filas y 1 columna, teniendo la forma (5, 1). En contraste, el arreglo 1D inicial tiene la forma (5,), que es una tupla con un solo elemento. Para cualquier arreglo 1D, la forma siempre es (n,), donde n representa la cantidad de elementos.

numpy.reshape()

La función reshape() en NumPy es idéntica al método .reshape(), pero se debe pasar un arreglo como su primer argumento. Para el parámetro shape, se puede pasar una tupla de enteros o un solo entero, por ejemplo, np.reshape(array, (3, 4)):

123456
import numpy as np # Creating a 1D array from 0 to 11 inclusive array = np.arange(12) # Reshaping the array to a 3x4 2D array (matrix) reshaped_array_2d = np.reshape(array, (3, 4)) print(reshaped_array_2d)
copy
Tarea

Swipe to start coding

Dispone de un array sales_data_2021 con datos simulados de ventas trimestrales para dos productos en 2021. Los primeros 4 elementos representan las ventas trimestrales del primer producto, y los últimos 4 elementos representan las ventas trimestrales del segundo producto.

  1. Utilice el método apropiado de sales_data_2021 para reorganizarlo en un array 2D.
  2. La primera fila debe contener las ventas trimestrales del primer producto.
  3. La segunda fila debe contener las ventas trimestrales del segundo producto.

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 4
single

single

some-alt