numpy 学习汇总41 - 数组拆分分割( 初步学习 tcy)
发布日期:2021-06-29 14:47:52 浏览次数:3 分类:技术文章

本文共 1914 字,大约阅读时间需要 6 分钟。

数组拆分  2018/11/26  2018/11/29
函数     数组及操作split        将一个数组分割为多个子数组hsplit       将一个数组水平分割为多个子数组(按列)vsplit       将一个数组垂直分割为多个子数组(按行)    # 总结:1D :split(x, int or []) == hsplit(x, int or [])2D :split(a,[],axis=0) == vsplit(a,[]) #axis=0可省略     split(a,[],axis=1) == hsplit(a,[])          ====================================================================1.numpy.split(ary, indices_or_sections, axis=0) #沿轴将数组分割为子数组    # 参数:#     indices_or_sections:int平均切分;int数组为沿轴切分的位置(左开右闭)[n1,n2)拆分为0-(n1-1);n1-(n2-1);n2-...#     axis:沿着哪个维度进行切向,默认为0,横向切分。为1时,纵向切分    # 实例1:1Dx = np.arange(9.0)np.split(x, 3)          # [array([ 0.,1.,2.]), array([ 3.,4.,5.]), array([ 6.,7.,8.])]np.hsplit(x, 3)    x = np.arange(8.0)np.split(x, [3,5,6,10]) # [array([ 0,1,2]),array([3.,4.]),array([ 5.]),array([ 6.,7.]),array([], dtype=float64)]np.hsplit(x,[3,5,6,10])    # 实例2:2Da=np.arange(12).reshape(3,4)# ----------------------------------np.split(a,[1,2],axis=0)         # 等价下面np.vsplit(a,[1,2])               # [array([[0, 1, 2, 3]]), array([[4, 5, 6, 7]]), array([[ 8,  9, 10, 11]])]np.split(a,[1,2],axis=1)         # 等价下面np.hsplit(a,[1,2])  # [array([[0],[4],[8]]), array([[1],[5], [9]]), array([[ 2,  3],[ 6, 7],[10, 11]])]# ----------------------------------    b=np.split(a,3)# 按行分割  # 等价下面b=np.vsplit(a,[1,2])             # [array([[0, 1, 2, 3]]), array([[4, 5, 6, 7]]), array([[ 8,  9, 10, 11]])]    np.split(a,[1,2,3],axis=1)       # 按列分割,等价下面np.hsplit(a, [1, 2, 3])          # [array([[0],[4],[8]]), array([[1],[5],[9]]), array([[ 2], [ 6],[10]]), array([[ 3],[ 7],[11]])]    =======================================================================备注:
No 函数 说明
1 concatenate 最一般化的连接,沿一条轴连接一组数组
2 vstack , rowstack ,  r_[] 以面向行的方式对数组进行堆叠(沿轴0)
3 hstack ,c_[] 以面向列的方式对数组进行堆叠(沿轴1 )
4 column_stack 类似于hstack ,但是会先将一维数组转换为二维列向量
5 dstack 以面向“深度”的方式对数组进行堆叠(沿轴2)
6 split 沿指定轴在指定的位置拆分数组
7 hsplit 、vsplit 、dsplit split的便捷化函数,分别沿轴0、轴1 、轴2进行拆分

转载地址:https://chunyou.blog.csdn.net/article/details/84642591 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:numpy 学习汇总42 - 数组添加与删除( 初步学习 tcy)
下一篇:numpy 学习汇总40- 修改数组维度( 初步学习 tcy)

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月04日 12时42分39秒