【python】stack,hstack,vstack

来源:互联网 发布:js获取padding的值 编辑:程序博客网 时间:2024/06/05 11:14

stack()函数
函数原型:stack(arrays, axis=0)

example1:

import numpy as npa=[[1,2,3],   [4,5,6]]print("列表a如下:")print(a)print("增加一维,新维度的下标为0")c=np.stack(a,axis=0)print(c)print("增加一维,新维度的下标为1")c=np.stack(a,axis=1)print(c)输出:列表a如下:[[1, 2, 3], [4, 5, 6]]增加一维,新维度下标为0[[1 2 3] [4 5 6]]增加一维,新维度下标为1[[1 4] [2 5] [3 6]]

example2:

import numpy as npa=[[1,2,3,4],   [5,6,7,8],   [9,10,11,12]]print("列表a如下:")print(a)print("增加一维,新维度的下标为0")c=np.stack(a,axis=0)print(c)print("增加一维,新维度的下标为1")c=np.stack(a,axis=1)print(c)输出:列表a如下:[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]增加一维,新维度的下标为0[[ 1  2  3  4] [ 5  6  7  8] [ 9 10 11 12]]增加一维,新维度的下标为1[[ 1  5  9] [ 2  6 10] [ 3  7 11] [ 4  8 12]]

example3:

import numpy as npa=[1,2,3,4]b=[5,6,7,8]c=[9,10,11,12]print("a=",a)print("b=",b)print("c=",c)print("增加一维,新维度的下标为0")d=np.stack((a,b,c),axis=0)print(d)print("增加一维,新维度的下标为1")d=np.stack((a,b,c),axis=1)print(d)输出:('a=', [1, 2, 3, 4])('b=', [5, 6, 7, 8])('c=', [9, 10, 11, 12])增加一维,新维度的下标为0[[ 1  2  3  4] [ 5  6  7  8] [ 9 10 11 12]]增加一维,新维度的下标为1[[ 1  5  9] [ 2  6 10] [ 3  7 11] [ 4  8 12]]

example4:

import numpy as npa=[[1,2,3],   [4,5,6]]b=[[1,2,3],   [4,5,6]]c=[[1,2,3],   [4,5,6]]print("a=",a)print("b=",b)print("c=",c)print("增加一维,新维度的下标为0")d=np.stack((a,b,c),axis=0)print(d)print("增加一维,新维度的下标为1")d=np.stack((a,b,c),axis=1)print(d)print("增加一维,新维度的下标为2")d=np.stack((a,b,c),axis=2)print(d)输出:('a=', [[1, 2, 3], [4, 5, 6]])('b=', [[1, 2, 3], [4, 5, 6]])('c=', [[1, 2, 3], [4, 5, 6]])增加一维,新维度的下标为0[[[1 2 3]  [4 5 6]] [[1 2 3]  [4 5 6]] [[1 2 3]  [4 5 6]]]增加一维,新维度的下标为1[[[1 2 3]  [1 2 3]  [1 2 3]] [[4 5 6]  [4 5 6]  [4 5 6]]]增加一维,新维度的下标为2[[[1 1 1]  [2 2 2]  [3 3 3]] [[4 4 4]  [5 5 5]  [6 6 6]]]

hstack()函数
函数原型:hstack(tup) ,参数tup可以是元组,列表,或者numpy数组,返回结果为numpy的数组
作用:在水平方向把元素堆起来

>>>import numpy as np>>>a=[1,2,3]>>>b=[4,5,6]>>>print(np.hstack((a,b)))[1 2 3 4 5 6 ]
>>>import numpy as np>>>a=[[1],[2],[3]]>>>b=[[1],[2],[3]]>>>c=[[1],[2],[3]]>>>d=[[1],[2],[3]]>>>print(np.hstack((a,b,c,d)))[[1 1 1 1] [2 2 2 2] [3 3 3 3]]

vstack()函数
函数原型:vstack(tup) ,参数tup可以是元组,列表,或者numpy数组,返回结果为numpy的数组
作用:在垂直方向把元素堆叠起来

>>>import numpy as np>>>a=[1,2,3]>>>b=[4,5,6]>>>print(np.vstack((a,b)))[[1 2 3] [4 5 6]]
>>>import numpy as np>>>a=[[1],[2],[3]]>>>b=[[1],[2],[3]]>>>c=[[1],[2],[3]]>>>d=[[1],[2],[3]]>>>print(np.vstack((a,b,c,d)))[[1] [2] [3] [1] [2] [3] [1] [2] [3] [1] [2] [3]]
阅读全文
0 0
原创粉丝点击