在使用numpy進(jìn)行數(shù)據(jù)相關(guān)的任務(wù)時(shí)缀踪,有時(shí)會(huì)遇到需要將兩個(gè)數(shù)組拼接在一起罢吃,下面就通過代碼示例的方式來記錄學(xué)習(xí)使用np.vstack和np.hstack完成拼接/堆疊的功能。
np.vstack((a, b))
垂直堆疊,要求兩個(gè)數(shù)組矩陣具有相同的列數(shù)(以二維數(shù)組為例)
np.hstack((a, b))
水平堆疊,要求兩個(gè)數(shù)組矩陣具有相同的行數(shù)(以二維數(shù)組為例)
代碼示例
import numpy as np
a = np.array([[1,2,3,4]])
b = np.array([[5,6,7,8]])
c = np.array([[100,200],[300,400]])
# 垂直堆疊
v_arr = np.vstack((a, b)) # 2個(gè)1X4 -> 1個(gè)2X4
print("垂直堆疊np.vstack:{},{} ->{}".format(a.shape, b.shape, v_arr.shape))
# 水平堆疊
h_arr = np.hstack((v_arr, c)) # 2X4 和 2X2 -> 1個(gè)2X4
print("水平堆疊np.hstack:{},{} ->{}".format(v_arr.shape, c.shape, h_arr.shape))
上述代碼的輸出結(jié)果
垂直堆疊np.vstack:(1, 4),(1, 4) ->(2, 4)
水平堆疊np.hstack:(2, 4),(2, 2) ->(2, 6)