If I use len(np.array([[2,3,1,0], [2,3,1,0], [3,2,1,1]])), I get back 3.
Why is there no argument for len() about which axis I want the length of in multidimensional arrays? This is alarming. Is there an alternative?
What is the len of the equivalent nested list?
len([[2,3,1,0], [2,3,1,0], [3,2,1,1]])
With the more general concept of shape, numpy developers choose to implement __len__ as the first dimension. Python maps len(obj) onto obj.__len__.
X.shape returns a tuple, which does have a len - which is the number of dimensions, X.ndim. X.shape[i] selects the ith dimension (a straight forward application of tuple indexing).
max(x.shape) in Python). (See the docs: mathworks.com/help/matlab/ref/length.html .)You can transpose the array if you want to get the length of the other dimension.
len(np.array([[2,3,1,0], [2,3,1,0], [3,2,1,1]]).T)
len, you should get length, and shouldn't have to wonder about a mathematical identity to understand what len(transpose) represents. Also, this does not work for len(arr.shape) > 2
lenfunction over each row and runmaxover thatarray.shape[i], withiindicating the relevant axis, should work well.