PythonのNumPy行列の場合
from numpy import matrix
A = matrix([[1,2],[3,4]])
この行列の行 (または列) の長さを調べるにはどうすればよいでしょうか。同様に、行数や列数を調べるにはどうすればよいでしょうか。
これまでのところ、私が見つけた唯一の解決策は次のとおりです。
len(A)
len(A[:,1])
len(A[1,:])
これはそれぞれ 2、2、1 を返します。このことから、len()
は行数を返すことがわかったので、len(A.T)
列数としては常に転置 を使用できます。ただし、 の行を読んでもlen(A)
、これが行数を返す必要があることがすぐにはわからないため、これは満足のいくものではなく、恣意的であるように感じられます。これは実際にはlen([1,2])
2D Python 配列の場合とは動作が異なり、2 を返します。
では、行列のサイズを見つけるためのより直感的な方法はあるのでしょうか、それともこれが最善の方法なのでしょうか?
ベストアンサー1
shape
numpy ndarray と行列の両方の特性です。
A.shape
タプル (m, n) を返します。ここで、m は行数、n は列数です。
実際、NumPyオブジェクトは、NumPyの2つの基本オブジェクト(ユニバーサル関数オブジェクトと並んで)の1つであるオブジェクトmatrix
の上に構築されているため、ndarray
ndarray