配列があるとします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 から列/行ベクトルを取得する次元に依存しない方法はありますか?