Actualmente estoy tratando de aprender Numpy y Python. Dada la siguiente matriz:
import numpy as np
a = np.array([[1,2],[1,2]])
¿Hay una función que devuelva las dimensiones de a
(ega es una matriz de 2 por 2)?
size()
devuelve 4 y eso no ayuda mucho.
python
arrays
numpy
dimensions
Morgan Freeman
fuente
fuente
shape
, en NumPy. Lo que NumPy llama la dimensión es 2, en su caso (ndim
). Es útil conocer la terminología habitual de NumPy: ¡esto facilita la lectura de los documentos!Respuestas:
Es
.shape
:Así:
fuente
shape
podría describirse con mayor precisión como un atributo que como una función , ya que no se invoca utilizando la sintaxis de llamada a función.property
sí mismo es una clase,ndarray.shape
no es una clase, es una instancia del tipo de propiedad.Primero:
Por convención, en el mundo de Python, el atajo para
numpy
esnp
, entonces:Segundo:
En Numpy, dimensión , eje / ejes , forma están relacionados y, a veces, conceptos similares:
dimensión
En Matemáticas / Física , la dimensión o dimensionalidad se define informalmente como el número mínimo de coordenadas necesarias para especificar cualquier punto dentro de un espacio. Pero en Numpy , de acuerdo con el documento numpy , es lo mismo que eje / ejes:
eje / ejes
la enésima coordenada para indexar an
array
en Numpy. Y las matrices multidimensionales pueden tener un índice por eje.forma
describe cuántos datos (o el rango) a lo largo de cada eje disponible.
fuente
También funciona si la entrada no es una matriz numpy sino una lista de listas
O una tupla de tuplas
fuente
np.shape
primero convierte su argumento en una matriz si no tiene el atributo de forma. Es por eso que funciona en la lista y ejemplos de tuplas.Puedes usar .shape
fuente
Puede usar
.ndim
para dimensionar y.shape
conocer la dimensión exactaPuedes cambiar la dimensión usando la
.reshape
funciónfuente
El
shape
método requiere quea
sea un numpy ndarray. Pero Numpy también puede calcular la forma de los iterables de los objetos de python puros:fuente
a.shape
es solo una versión limitada denp.info()
. Mira esto:Fuera
fuente