标签:13 python 堆叠 print np numpy stack axis
python numpy 中堆叠函数总结
构造数据
import numpy as np
a = np.arange(1,7).reshape((2,3))
b = np.arange(7,13).reshape((2,3))
c = np.arange(13,19).reshape((2,3))
print("a",a)
print("b",b)
print("c",c)
a [[1 2 3]
[4 5 6]]
b [[ 7 8 9]
[10 11 12]]
c [[13 14 15]
[16 17 18]]
代码块
d =np.hstack((a,b,c))#水平堆叠<-->np.concatenate((a,b),axis = 1)
e =np.vstack((a,b,c))#垂直堆叠<-->np.concatenate((a,b),axis = 0)
#堆叠数组比输入多一维
f =np.stack((a,b,c),axis = 0)#以第一维按垂直方向堆叠
#(表示将最外层[ ]里,只有两个元素,直接堆叠)
g =np.stack((a,b,c),axis = 1)#以第二维按垂直方向堆叠
#(第二层的[ ],每个第二层的[ ]都有三个元素,因此对应元素就行堆叠)
h =np.stack((a,b,c),axis = 2)#以第三维按水平方向堆叠
#(每一个子数组是一列)
print("d:",d)
print("e:",e)
print("f:",f)
print("g:",g)
print("h:",h)
d: [[ 1 2 3 7 8 9 13 14 15]
[ 4 5 6 10 11 12 16 17 18]]
e: [[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]
[13 14 15]
[16 17 18]]
f: [[[ 1 2 3]
[ 4 5 6]]
[[ 7 8 9]
[10 11 12]]
[[13 14 15]
[16 17 18]]]
g: [[[ 1 2 3]
[ 7 8 9]
[13 14 15]]
[[ 4 5 6]
[10 11 12]
[16 17 18]]]
h: [[[ 1 7 13]
[ 2 8 14]
[ 3 9 15]]
[[ 4 10 16]
[ 5 11 17]
[ 6 12 18]]]
np.stack的官方解释为 对指定axis增加维度。
故查看堆叠后的shape也可发现stack是按照axis维度变化的。
shape结果:
print("f:",f.shape)
print("g:",g.shape)
print("h:",h.shape)
f: (3, 2, 3)
g: (2, 3, 3)
h: (2, 3, 3)
堆叠之前,a,b,c均为(2,3)的数组。
标签:13,python,堆叠,print,np,numpy,stack,axis 来源: https://blog.csdn.net/PXFQL/article/details/114823001
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。