Posted By: Anonymous
For a numpy matrix in python
from numpy import matrix A = matrix([[1,2],[3,4]])
How can I find the length of a row (or column) of this matrix? Equivalently, how can I know the number of rows or columns?
So far, the only solution I’ve found is:
len(A) len(A[:,1]) len(A[1,:])
Which returns 2, 2, and 1, respectively. From this I’ve gathered that
len() will return the number of rows, so I can always us the transpose,
len(A.T), for the number of columns. However, this feels unsatisfying and arbitrary, as when reading the line
len(A), it isn’t immediately obvious that this should return the number of rows. It actually works differently than
len([1,2]) would for a 2D python array, as this would return 2.
So, is there a more intuitive way to find the size of a matrix, or is this the best I have?
shape is a property of both numpy ndarray’s and matrices.
will return a tuple (m, n), where m is the number of rows, and n is the number of columns.
In fact, the numpy
matrix object is built on top of the
ndarray object, one of numpy’s two fundamental objects (along with a universal function object), so it inherits from