代码:
import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6]])
b = np.array([[7, 8, 9], [10, 11, 12]])
c = np.array([[13, 14, 15], [16, 17, 18]])
vertical_merge = np.concatenate((a, b, c), axis=0) # axis=0 竖直方向向下拼接
print("vertical_merge:", "\n", vertical_merge, "\n" * 2)
horizontal_merge = np.concatenate((a, b, c), axis=1) # axis=1 水平方向向右拼接
print("horizontal_merge:", "\n", horizontal_merge)
运行结果:
vertical_merge:
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]
[13 14 15]
[16 17 18]]
horizontal_merge:
[[ 1 2 3 7 8 9 13 14 15]
[ 4 5 6 10 11 12 16 17 18]]
小结:
concatenate()方法可以拼接多个矩阵,参数axis=0(default)表示竖直放下向下拼接, axis=1表示水平方向向右依次拼接。
那么 numpy.concatenate() 和 numpy.hstack() / numpy.vstack() 的区别在哪里呢?嘻嘻嘻