配列があるとしましょうa
:
a = np.array([[1,2,3], [4,5,6]])
array([[1, 2, 3],
[4, 5, 6]])
それを1D配列(つまり、列ベクトル)に変換したいと思います。
b = np.reshape(a, (1,np.product(a.shape)))
しかし、これは戻ります
array([[1, 2, 3, 4, 5, 6]])
これは以下とは異なります:
array([1, 2, 3, 4, 5, 6])
この配列の最初の要素を取得して、手動で1D配列に変換できます。
b = np.reshape(a, (1,np.product(a.shape)))[0]
ただし、元の配列の次元数を知る必要があります(より高い次元で作業する場合は、[0]を連結します)。
任意のndarrayから列/行ベクトルを取得する次元に依存しない方法はありますか?
ravel()
は、ビューを返しますが、常にそうであるとは限りません。ravel()
コピーが返される場合があります。</