python中numpy数组的合并_python中numpy合并和分割

本文介绍如何使用numpy库进行矩阵和序列的合并操作,包括上下合并(vstack)和左右合并(hstack),并演示了如何通过添加维度来转换矩阵方向。此外,还详细解释了如何利用concatenate函数对多个矩阵进行合并,并探讨了np.split与np.array_split在矩阵分割上的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

两个矩阵或序列进行合并

A=np.array([1,1,1]) B=np.array([2,2,2]) print(np.vstack(A,B))# 上下合并 vertical stack D=np.hstack((A,B))#左右合并 horizontal stack

上下合并结果为

[[1,1,1],

[2,2,2]]

左右合并[1,1,1,2,2,2]

注意A.T不能转换成竖向的序列

要采用

A.[np.newaxis,:]冒号在右边则代表在行上加了一个维度

A.[:,np.newaxis]冒号在左边则代表在列上加了一个维度,可实现转换成竖向的序列。

[

[1],

[1],

[]]

]

故如果想要转换成下图所示

uploading-image-788153.png

A=np.array([1,1,1])[:,np.newaxis]

B=np.array([2,2,2])[:,np.newaxis]

np.hstack(A,B)

np.concatenate((A,B,B,A),axis=0)可对多个序列或矩阵进行合并,合并后矩阵.0表示上下合并成列向。

1表示左右合并行向。

从横向分割或纵向分割

如果无法按此规则分割,则程序报错。

故np.split()不支持不等量分割。

这里需要用np.array_split()来进行不等量分割。

会将无法等量分割,分割一个一个一维的序列或矩阵

np.vsplit(A,3)纵向分成3块(仅支持等量分割,与np.split()相似,只是不用传axis参数,即等于axis=0)

np.hsplit(A,2)横向分成2块。(仅支持等量分割,与np.split()相似,只是不用传axis参数,即等于axis=1)、

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值