(五)Numpy数组操作之连接数组

函数

函数描述
concatenate连接沿现有轴的数组序列
stack沿着新的轴加入一系列数组。
hstack水平堆叠序列中的数组(列方向)
vstack竖直堆叠序列中的数组(行方向)

numpy.concatenate

numpy.concatenate 函数用于沿指定轴连接相同形状的两个或多个数组,格式如下:

  • numpy.concatenate((a1, a2, ...), axis)

参数说明:

  • a1, a2, ...:相同类型的数组

  • axis:沿着它连接数组的轴,默认为 0

实例:

import numpy as np
 
a = np.array([[1,2],[3,4]])
 
print ('第一个数组:')
print (a)
'''
[[1 2]
 [3 4]]
'''

b = np.array([[5,6],[7,8]])
print ('第二个数组:')
print (b)
'''
[[5 6]
 [7 8]]
'''

# 两个数组的维度相同
print ('沿轴 0 连接两个数组:')
print (np.concatenate((a,b)))
'''
[[1 2]
 [3 4]
 [5 6]
 [7 8]]
'''
 
print ('沿轴 1 连接两个数组:')
print (np.concatenate((a,b),axis = 1))
'''
[[1 2 5 6]
 [3 4 7 8]]
'''

numpy.stack

numpy.stack 函数用于沿新轴连接数组序列,格式如下:

  • numpy.stack(arrays, axis)

参数说明:

  • arrays相同形状的数组序列

  • axis:返回数组中的轴,输入数组沿着它来堆叠

实例:

import numpy as np
 
a = np.array([[1,2],[3,4]])
print ('第一个数组:')
print (a)
'''
[[1 2]
 [3 4]]
'''
b = np.array([[5,6],[7,8]])
print ('第二个数组:')
print (b)
'''
[[5 6]
 [7 8]]
'''
print ('沿轴 0 堆叠两个数组:')
print (np.stack((a,b),0))
'''
[[[1 2]
  [3 4]]

 [[5 6]
  [7 8]]]
'''
 
print ('沿轴 1 堆叠两个数组:')
print (np.stack((a,b),1))
'''
[[[1 2]
  [5 6]]

 [[3 4]
  [7 8]]]
'''

numpy.hstack / vstack

numpy.hstack 是 numpy.stack 函数的变体,它通过水平堆叠来生成数组。

numpy.vstack 是 numpy.stack 函数的变体,它通过垂直堆叠来生成数组。

import numpy as np
 
a = np.array([[1,2],[3,4]])
 
print ('第一个数组:')
print (a)
'''
[[1 2]
 [3 4]]
'''
b = np.array([[5,6],[7,8]])

print ('第二个数组:')
print (b)
'''
[[5 6]
 [7 8]]
'''

print ('水平堆叠:')
c = np.hstack((a,b))
print (c)
'''
[[1 2 5 6]
 [3 4 7 8]]
'''

print ('竖直堆叠:')
c = np.vstack((a,b))
print (c)
'''
[[1 2]
 [3 4]
 [5 6]
 [7 8]]
'''

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值