Numpy array 合并

匿名 (未验证) 提交于 2019-12-02 22:11:45

1、np.vstack() :垂直合并

>>> import numpy as np >>> A = np.array([1,1,1]) >>> B = np.array([2,2,2]) >>> print(np.vstack((A,B))) # vertical stack,属于一种上下合并,即对括号中的两个整体进行对应操作 [[1 1 1]  [2 2 2]]  >>> C = np.vstack((A,B)) >>> print(A.shape,C.shape) (3,) (2, 3)

2、np.hstack():水平合并

>>> D = np.hstack((A,B)) # horizontal stack,即左右合并 >>> print(D) [1 1 1 2 2 2] >>> print(A.shape,D.shape) (3,) (6,)

3、np.newaxis():转置

>>> print(A[np.newaxis,:]) [[1 1 1]] >>> print(A[np.newaxis,:].shape) (1, 3) >>> print(A[:,np.newaxis]) [[1]  [1]  [1]] >>> print(A[:,np.newaxis].shape) (3, 1)   >>> A = np.array([1,1,1])[:,np.newaxis] >>> B = np.array([2,2,2])[:,np.newaxis] >>> C = np.vstack((A,B))   # vertical stack >>> D = np.hstack((A,B))   # horizontal stack >>> print(D) [[1 2]  [1 2]  [1 2]] >>> print(A.shape,D.shape) (3, 1) (3, 2)

4、np.concatenate():针对多个矩阵或序列的合并操作

#axis参数很好的控制了矩阵的纵向或是横向打印,相比较vstack和hstack函数显得更加 >>> C = np.concatenate((A,B,B,A),axis=0) >>> print(C) [[1]  [1]  [1]  [2]  [2]  [2]  [2]  [2]  [2]  [1]  [1]  [1]]  >>> D = np.concatenate((A,B,B,A),axis=1) >>> print(D) [[1 2 2 1]  [1 2 2 1]  [1 2 2 1]]

 

文章来源: Numpy array 合并
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!