# numpy 簡單來說,numpy目前都是在處理"陣列",超級方便的處理陣列方法!! **#8 numpy的array合併** 「垂直合併」的函式 ``` python= np.vstack() ``` ``` python= import numpy as np A = np.array([1,1,1]) B = np.array([2,2,2]) print(np.vstack((A,B))) # vertical stack """ [[1,1,1] [2,2,2]] """ ``` 「水平合併」的函式 ``` python= np.hstack() ``` ``` python= D = np.hstack((A,B)) # horizontal stack print(D) # [1,1,1,2,2,2] print(A.shape,D.shape) # (3,) (6,) ``` 另外還有兩個函式,就先不詳細解釋了 ``` python= np.newaxis() ``` ``` python= np.concatenate() ``` **#9 numpy的array分割** 「縱向分割」的函式 ``` python= print(np.split(A, 2, axis=1)) """ [array([[0, 1], [4, 5], [8, 9]]), array([[ 2, 3], [ 6, 7], [10, 11]])] """ ``` 「橫向分割」的函式 ``` python= print(np.split(A, 3, axis=0)) # [array([[0, 1, 2, 3]]), array([[4, 5, 6, 7]]), array([[ 8, 9, 10, 11]])] ``` **#10 numpy的 copy & deep copy** 簡言之,就是討論「有無關聯性的複製」 copy() 的賦直方式沒有關連性 ``` python= b = a.copy() # deep copy print(b) # array([11, 22, 33, 3]) a[3] = 44 print(a) # array([11, 22, 33, 44]) print(b) # array([11, 22, 33, 3]) ```