Python array shape numpy.

En este tutorial explicamos el en Python el comando shape de la librería Numpy, el cual nos muestra las dimensiones de un array. Nos es útil para ver cómo funcionan diferentes comandos que se aplican a arreglos.

Comando shape numpy.

Para poder usar el comando Shape, primero necesitamos importar la librería de Numpy en Python.

Tiene solamente un parámetro y esta es su sintaxis.

np.shape( arreglo )

Dónde:

  • Np, hace referencia a la librería Numpy.
  • Arreglo, es el array del que queremos conocer sus dimensiones.

Resultado: el resultado es un arreglo que indica el número de filas y el número de columnas (filas, columnas).

Si es un arreglo de más dimensiones, el arreglo del resultado tendrá más elementos, tantos como las dimensiones o ejes del arreglo.

 

Ejemplo y explicación python array shape.

Si tenemos el siguiente array, podemos conocer sus dimensiones con el comando Shape. El resultado muestra primero el número de filas y después el número de columnas.

Y este es el código en Python:

import numpy as np
a = ( [0, 1, 2], [3, 4, 5])
f = np.shape(a)
print(f)                 ## Imprime:  (2, 3)

Python shape numpy

Si tenemos un array de 3 dimensiones o más, obtendremos lo siguiente:

import numpy as np

a = ( [ [0, 1, 2], [3, 4, 5] ],
[ [6, 7, 8], [9, 10, 11] ],
[ [12, 13, 14], [15, 16, 17] ],
[ [18, 19, 20], [21, 22, 23] ]  )

f = np.shape(a)

print(f)                 ## Imprime:  (4, 2, 3)

Podemos ver que primero imprime la agrupación mayor.

Es decir, tenemos 3 números dentro de un corchete, los llamaremos A.

[0, 1, 2]

Luego tenemos 2 grupos A dentro de corchetes, lo llamaremos grupo B. [A, A]

[ [0, 1, 2], [3, 4, 5] ]

Y por último tenemos 4 grupos B, entre paréntesis. (B, B, B, B)

( [ [0, 1, 2], [3, 4, 5] ],

[ [6, 7, 8], [9, 10, 11] ],

[ [12, 13, 14], [15, 16, 17] ],

[ [18, 19, 20], [21, 22, 23] ]  )

Por eso el comando shape arroja como resultado (4, 2, 3).

 

Un ejemplo más array shape.

En este ejemplo, vamos a definir una función para poder visualizar mejor los array. Así al momento de obtener sus dimensiones con el comando shape, nos será más fácil identificar porque es ese el resultado.

El siguiente código tiene 3 arreglos de distintas dimensiones, el comando shape nos dirá cuales son.

import numpy as np

def imprimir(z):
    for k in range(len(z)):
        l=""
        for i in range(len(z[0])):
            l = l + "\t" +str(z[k][i])
print(l)

a1 = ([1,2,3,4],[5,6,7,8])
a2 = np.arange(12)
a3 = np.reshape(a2, (3,4))

print("\nArray a1: ________________")
imprimir(a1)
print(f"Shape: { np.shape(a1) }")

print("\nArray a2:__________________")
print(a2)
print(f"Shape: { np.shape(a2) }")

print("\nArray a3:________________")
imprimir(a3)
print(f"Shape: { np.shape(a3) }")

Usamos el comando reshape, para darle otras dimensiones al arreglo a2.

Este es el resultado del código anterior:

Python array shape

Para más tutoriales de Python de a este enlace.

Algunos temas que te pueden interesar:

Latex Matplotlib.

Python transpose array (Matriz transpuesta).

Ordenar arreglo en Python (array sort)