web-dev-qa-db-fra.com

len () d'un tableau numpy en python

Si j'utilise len(np.array([[2,3,1,0], [2,3,1,0], [3,2,1,1]])), je récupère 3. 

Pourquoi n’existe-t-il pas d’argument pour len() sur l’axe dont je veux la longueur dans les tableaux multidimensionnels? C'est alarmant. Y a-t-il une alternative?

5
Monica Heddneck

Quelle est la len de la liste imbriquée équivalente?

len([[2,3,1,0], [2,3,1,0], [3,2,1,1]])

Avec le concept plus général de shape, les développeurs numpy choisissent d'implémenter __len__ en tant que première dimension. Python mappe len(obj) sur obj.__len__.

X.shape renvoie un tuple qui a une len - qui est le nombre de dimensions, X.ndim. X.shape[i] sélectionne la dimension ith (application directe de l'indexation Tuple).

11
hpaulj

Facile. Utilisez .shape.

>>> nparray.shape
(5, 6) #Returns a Tuple of array dimensions.
5
Dmitry Pleshkov

Vous pouvez transposer le tableau si vous souhaitez obtenir la longueur de l'autre dimension.

len(np.array([[2,3,1,0], [2,3,1,0], [3,2,1,1]]).T)
0
Batman