工作室技术记录与分享~

Numy array合并答案

5、Numpy array的合并

1、np.vstack()

上下合并

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

print(np.vstack((A,B))) 

print(A.shape,np.vstack((A,B)).shape)

2、np.hstack()

左右合并

D = np.hstack((A,B))
print(D)
print(A.shape,D.shape)

3、np.newaxis()

[]是数组,[[]]是矩阵,这个函数能将数组变成矩阵,并且:在前面是原来矩阵的转置,:在后面是将数组变成矩阵。np.newaxis()的值等同于None。

print(A[np.newaxis,:])
print(A[np.newaxis,:].shape)
print(A[:,np.newaxis])
print(A[:,np.newaxis].shape)

4、np.concatenate()

合并,参数axis=0表示上下合并,axis=1表示左右合并。PS:只能操作含有两个[[]]的矩阵,不能操作数组,而np.hstack() ,np.vstack()可以。

C = np.concatenate((A,B,B,A),axis=0)
print(C)
D = np.concatenate((A,B,B,A),axis=1)
print(D)

5、索引矩阵的指定列并合并

X = np.array([[1, 2, 3, 4],
             [5, 6, 7, 8], 
             [9, 10, 11, 12]])
print(X[:, 1])  
//索引多维数组返回的是一个数组结构
//如果要返回矩阵列的结构,则要
//X[:, 1][:, np.newaxis]

X_sub = np.hstack([X[:, 1][:, np.newaxis], X[:, 3][:, np.newaxis]])
print(X_sub)//左右合并第二列和第四列

小挑战

用之前视频讲到的切片索引的方式将矩阵X的第二第四列合并。

答案如下:


>> X[:, [1, 3]]
array([[ 2,  4],
       [ 6,  8],
       [10, 12]])

⬆️

______

扫一扫,关注我

暂无评论~~