162 votes

Comment trouver la longueur (ou les dimensions, la taille) d'une matrice numpy en python ?

Pour une matrice numpy en python

from numpy import matrix
A = matrix([[1,2],[3,4]])

Comment puis-je trouver la longueur d'une ligne (ou d'une colonne) de cette matrice ? De manière équivalente, comment puis-je connaître le nombre de lignes ou de colonnes ?

Jusqu'à présent, la seule solution que j'ai trouvée est :

len(A)
len(A[:,1])
len(A[1,:])

Ce qui renvoie 2, 2 et 1, respectivement. J'en déduis que len() retournera le nombre de lignes, donc je peux toujours utiliser la transposition, len(A.T) pour le nombre de colonnes. Cependant, cela semble insatisfaisant et arbitraire, comme lorsqu'on lit la ligne len(A) il n'est pas immédiatement évident que cela devrait retourner le nombre de lignes. En fait, cela fonctionne différemment de len([1,2]) pour un tableau python 2D, car cela renverrait 2.

Existe-t-il un moyen plus intuitif de déterminer la taille d'une matrice, ou est-ce le meilleur moyen dont je dispose ?

276voto

Kyle Heuton Points 4885

shape est une propriété à la fois de numpy ndarray et des matrices.

A.shape

retournera un tuple (m, n), où m est le nombre de lignes et n le nombre de colonnes.

En fait, le numpy matrix est construit au-dessus de l'objet ndarray l'un des deux objets fondamentaux de numpy (avec l'objet fonction universelle), il hérite donc de ndarray

41voto

hd1 Points 11522

matrix.size en fonction de la documentation numpy renvoie le Number of elements in the array. J'espère que cela vous aidera.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X