LoginSignup
0
0

More than 1 year has passed since last update.

array配列同士の結合

Posted at

pythonの画像認識の機械学習などで、画像をopencvで読み込ませるとarrayで返ってくる。
データ前処理などで、このarray同士で結合させる場面などはよくあるため、まとめておく。

array配列同士の結合

ポイント
①numpyのnp.stackメソッドを使用する
②連結すると次元が一つ上がる  
注意)連結する配列のshape(列数)は必ず一致している必要がある

import numpy as np

arr1 = np.arange(3) #array([0, 1, 2])
arr2 = np.arange(3, 6) #array([3, 4, 5])
arr3 = np.arange(6, 9) #array([6, 7, 8])
arr4 = np.arange(9, 12) array([ 9, 10, 11])

#  1次元同士の配列を横に重ねる(2次元になる)
arr5 = np.stack((arr1, arr2, arr3, arr4)) 
     #array([[ 0,  1,  2],
             [ 3,  4,  5],
             [ 6,  7,  8],
             [ 9, 10, 11]])
arr5.shape #(4, 3)


arr6 = np.array([[ 3,  1,  2],
             [ 3,  4,  5],
             [ 6,  7,  8],
             [ 9, 10, 11]])

#  2次元同士の配列を横に重ねる(3次元になる)
arr7 = np.stack((arr5, arr6))

       #array([[[ 0,  1,  2],
              [ 3,  4,  5],
             [ 6,  7,  8],
             [ 9, 10, 11]],

            [[ 3,  1,  2],
              [ 3,  4,  5],
              [ 6,  7,  8],
              [ 9, 10, 11]]])

arr7.shape #(2, 4, 3)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0