垂直方向堆叠阵列(按行排列)
垂直方向堆叠,列数不变,行数改变。就像搭积木,是垂直搭,越搭越高,但是并没有变宽。
参数tup可以是元组,列表,或者numpy数组,返回结果为numpy的数组。
>>> a = np.array([1, 2, 3])
>>> b = np.array([2, 3, 4])
>>> np.vstack((a,b))
array([[1, 2, 3],
[2, 3, 4]])
>>> a = np.array([[1], [2], [3]])
>>> b = np.array([[2], [3], [4]])
>>> np.vstack((a,b))
array([[1],
[2],
[3],
[2],
[3],
[4]])
以上是最简单的例子,如果tup作为list里面每个元素是series,会把series先转化为list,然后再运行。(是通过例子的出来的黑盒结论,没有看过源代码,所以不保证正确)举例如下:
>>> a = np.array([1, 2, 3])
>>> b = np.array([2, 3, 4])
>>> np.stack((a, b))
array([[1, 2, 3],
[2, 3, 4]])
>>> np.stack((a, b), axis=-1)
array([[1, 2],
[2, 3],
[3, 4]])
按行堆叠,列数改变,行数不变,与vstack()对应存在。
>>> a = np.array((1,2,3))
>>> b = np.array((2,3,4))
>>> np.hstack((a,b))
array([1, 2, 3, 2, 3, 4])
>>> a = np.array([[1],[2],[3]])
>>> b = np.array([[2],[3],[4]])
>>> np.hstack((a,b))
array([[1, 2],
[2, 3],
[3, 4]])