3-6 Numpy数组的合并与分割

合并操作

import numpy as np
x=np.array([1,2,3])
y=np.array([3,2,1])
z=np.array([666,666,666])

np.concatenate([x,y,z])
‘‘‘
array([  1,   2,   3,   3,   2,   1, 666, 666, 666])
’’’
#拼接 注意[]

A=np.array([[1,2,3],
          [4,5,6]])
np.concatenate([A,A])
‘‘‘
array([[1, 2, 3],
       [4, 5, 6],
       [1, 2, 3],
       [4, 5, 6]])
’’’
#默认axis=0 沿第一个纬度拼接 

np.concatenate([A,A],axis=1)
‘‘‘
array([[1, 2, 3, 1, 2, 3],
       [4, 5, 6, 4, 5, 6]])
’’’

#沿第二个纬度拼接

np.concatenate([A,z])
# 报错 维度不同无法拼接
#需将z转化为多维

np.concatenate([A,z.reshape(1,-1)])
=np.vstack([A,z])
#竖直拼接
#不满足列相等会报错

B=np.full((2,2),100)
np.hstack([A,B])
#水平拼接
#不满足行相等会报错

分割操作

x=np.arange(2,10)
x1,x2,x3=np.split(x,[3,7])
#234
#5678
#9

 x1,x2=np.split(x,[5])

A=np.arange(16).reshape([4,4])
A1,A2=np.split(A,[2])
#前两行 后两行
‘‘‘
array([[0, 1, 2, 3],
       [4, 5, 6, 7]])
array([[ 8,  9, 10, 11],
       [12, 13, 14, 15]])
’’’
#默认第一个维度

A1,A2=np.split(A,[2],axis=1)
#第二个维度

upper,lower=np.vsplit(A,[2])
#分割出前两行 

left,right=np.hsplit(A,[2])
#分割出前两列 

X,y=np.hsplit(A,[-1])
#-1最后一列分割出来
‘‘‘
array([[ 0,  1,  2],
       [ 4,  5,  6],
       [ 8,  9, 10],
       [12, 13, 14]])
array([[ 3],
       [ 7],
       [11],
       [15]])
’’’

y[:,0]
#所有的行 第0列
‘‘‘
array([ 3,  7, 11, 15])
’’’
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • paste函数合并字符串 paste是一个字符串操作函数,可以把多个字符串合并为一个字符串paste("xxxx"...
    卞卡727阅读 677评论 0 0
  • 分支的新建与合并 让我们来看一个简单的分支新建与分支合并的例子,实际工作中你可能会用到类似的工作流。 你将经历如下...
    vb12阅读 731评论 0 0
  • 3.2 Git 分支 - 分支的新建与合并 分支的新建与合并 让我们来看一个简单的分支新建与分支合并的例子,实际工...
    Crisewng阅读 626评论 0 0
  • 万绿丛中一点红, 行单影只望苍穹。 孤枝独秀无春意, 百万花开盛世隆。
    渴望_d276阅读 190评论 0 0
  • 自小我们被教育要勤奋、努力,才能出人头地,这本没有错,但并不是在所有领域付出同等的努力都能够收获同等的回报。 在《...
    林含键阅读 2,194评论 2 4