【NumPy】矩陣的合併和分割

import numpy as np

array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])

print(np.vstack((array1, array2)))  # 垂直合併
print(np.hstack((array1, array2)))  # 水平合併
print(np.concatenate((array1, array2, array1), axis=0))  # 當axis爲0是水平合併,爲1是垂直合併

array3 = np.arange(12).reshape((3, 4))  # 生成0到11的3行4列矩陣
arr3_1, arr3_2 = np.split(array3, 2, axis=1)  # 把array3分成2份,axis爲1是水平方向,爲0報錯,相當於np.hsplit(array3, 2)
# 結果:
# arr3_1:
# [[0 1]
#  [4 5]
#  [8 9]]

# arr3_2:
# [[ 2  3]
#  [ 6  7]
#  [10 11]]
arr3_3, arr3_4, arr3_5 = np.array_split(array3, 3, axis=1)  # 若分割不能等分的數組可以使用此方法避免報錯
arr3_6, arr3_7, arr3_8 = np.vsplit(array3, 3)  # 垂直方向分割成3份

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章