NumPy--05 array的合并

import numpy as np
#numpy的array合并

A = np.array([1,1,1])
B = np.array([2,2,2])

#纵向合并
C = np.vstack((A,B))  #vertical stack

#横向合并
D = np.hstack((A,B))  #horizontal stack

print(A)
print(B)
print(C)
print(A.shape,C.shape)

输出

[1 1 1]
[2 2 2]
[[1 1 1]
 [2 2 2]]
(3,) (2, 3)


#A B只是一维序列,有3个元素,但不能通过A.T把一个序列变成矩阵
print(A)
print(A.T)

输出

[1 1 1]
[1 1 1]

 

#为行或列增加维度,将序列转化为矩阵
print(A[np.newaxis,:])  #为序列添加行的维度
print(A[np.newaxis,:].shape)

print(A[:,np.newaxis])  #为序列添加列的维度
print(A[:,np.newaxis].shape)

输出

[[1 1 1]]
(1, 3)
[[1]
 [1]
 [1]]
(3, 1)


#对A B转化后进行纵向合并
D = np.hstack((A[:,np.newaxis],B[:,np.newaxis]))
print(D)

输出

[[1 2]
 [1 2]
 [1 2]]

 

#利用np.concatenate((A,B,C,...),axis=0,1)可将多个矩阵在指定维度上进行合并
E = np.concatenate((A,B,A),axis=0)
print(E)

输出

[1 1 1 2 2 2 1 1 1]


F = np.concatenate((A[:,np.newaxis],B[:,np.newaxis],A[:,np.newaxis]),axis=1)

#此时三个矩阵均为3行1列,将三个矩阵在列方向上进行合并,输出一个3行3列的矩阵
print(F)

输出

[[1 2 1]
 [1 2 1]
 [1 2 1]]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值