当前位置:网站首页 > 网络设备调试 正文 网络设备调试

NumPy堆叠数组

南京泽同信息 2025-11-24 22:00:21 网络设备调试 40 ℃ 0 评论

垂直堆叠(Vertical Stacking)

np.vstack

np.vstack函数用于在垂直方向上堆叠数组,即沿着第一个轴(对于二维数组来说是行)进行连接。

import numpy as np  

a = np.array([[1, 2, 3], [4, 5, 6]])  
b = np.array([[7, 8, 9], [10, 11, 12]])  
  
# 使用 np.vstack 在垂直方向上堆叠这两个数组  
c = np.vstack((a, b))  
  
print(c)

'''
[[ 1  2  3]
 [ 4  5  6]
 [ 7  8  9]
 [10 11 12]]
'''

水平堆叠(Horizontal Stacking)

np.hstack

np.hstack函数用于在水平方向上堆叠数组,即沿着第二个轴(对于二维数组来说是列)进行连接。

import numpy as np  
  
a = np.array([[1, 2, 3], [4, 5, 6]])  
b = np.array([[7, 8, 9], [10, 11, 12]]) 
  
# 使用 np.hstack 在水平方向上堆叠这两个数组(注意,要求数组的行数相同)  
c = np.hstack((a, b))  
  
print(c)

'''
[[ 1  2  3  7  8  9]
 [ 4  5  6 10 11 12]]
'''

注意,当使用np.hstack时,需要确保数组在第一个维度(即行数)上是兼容的。

np.concatenate

更通用的方法是使用np.concatenate,它允许指定沿哪个轴连接数组。

使用np.concatenate进行垂直堆叠,应传递具有相同列数的数组,并将axis参数设置为0; 对于水平堆叠,应传递具有相同行数的数组,并将axis参数设置为1。

# 沿着第一个轴(行)连接,类似于 vstack  
c_vertical = np.concatenate((a, b), axis=0)  
print(c_vertical) 

'''
[[ 1  2  3]
 [ 4  5  6]
 [ 7  8  9]
 [10 11 12]]
'''

# 沿着第二个轴(列)连接,类似于 hstack  
c_horizontal = np.concatenate((a, b), axis=1)  
print(c_horizontal)  

'''
[[ 1  2  3  7  8  9]
 [ 4  5  6 10 11 12]]
'''
你可能想看:

版权说明:如非注明,本站文章均为 ZBLOG 原创,转载请注明出处和附带本文链接

请在这里放置你的在线分享代码
Copyright Your WebSite.Some Rights Reserved.
微信咨询&联系客服
QQ:2586422870
在线时间
9:00 ~ 23:00