使用NumPy水平组合数组和垂直组合数组

1 水平数组组合

通过hstack函数可以将2个或多个数组水平组合起来形成一个数组,那么什么叫数组的水平组合呢?下面先看一个例子。

创新互联建站专注于华宁企业网站建设,成都响应式网站建设公司,成都商城网站开发。华宁网站建设公司,为华宁等地区提供建站服务。全流程定制网站,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

现在有两个3*2的数组A和B。

数组A

0 1 2 3 4 5

数组B

6 7 8 4 1 5

现在使用hstack函数将两个数组水平组合的代码如下。

 
 
 
 
  1. hstack(A,B)

hstack函数的返回值就是组合后的结果。

0 1 2 6 7 8 3 4 5 4 1 5

我们可以看到,数组A和数字B在水平方向首尾连接了起来,形成了一个新的数组。这就是数组的水平组合。多个数组进行水平组合的效果类似。但数组水平组合必须要满足一个条件,就是所有参与水平组合的数组的行数必须相同,否则进行水平组合会抛出异常。

下面的例子通过reshape方法以及乘法运行创建了3个二维数组(行数相同),然后使用hstack函数水平组合其中的两个或三个数组。

 
 
 
 
  1. from numpy import *
  2. a = arange(9).reshape(3,3)
  3. b = a * 3
  4. print(a)
  5. print('----------------')
  6. print(b)
  7. print('----------------')
  8. c = a * 5
  9. # 水平组合a和b
  10. print(hstack((a,b)))
  11. print('----------------')
  12. # 水平组合a、b和c
  13. print(hstack((a,b,c)))

程序运行结果如图1所示。

图1 水平组合数组

2 垂直数组组合

通过vstack函数可以将2个或多个数组垂直组合起来形成一个数组,那么什么叫数组的垂直组合呢?下面先看一个例子。

现在有两个3*2的数组A和B。

数组A

0 1 2 3 4 5

数组B

6 7 8 4 1 5

现在使用vstack函数将两个数组垂直组合的代码如下。

 
 
 
 
  1. vstack(A,B)

vstack函数的返回值就是组合后的结果。

0 1 2 3 4 5 6 7 8 4 1 5

下面的例子通过reshape方法以及乘法运行创建了3个二维数组(行数相同),然后使用hstack函数水平组合其中的两个或三个数组。

 
 
 
 
  1. from numpy import *
  2. a = arange(12).reshape(3,4)
  3. b = arange(16).reshape(4,4)
  4. c = arange(20).reshape(5,4)
  5. print(a)
  6. print('------------')
  7. print(b)
  8. print('------------')
  9. print(c)
  10. print('------------')
  11. # 垂直组合
  12. print(vstack((a,b,c)))

程序运行结果如图2所示。

图2 垂直组合数组

本文转载自微信公众号「极客起源」,作者geekori。转载本文请联系极客起源公众号。

当前题目:使用NumPy水平组合数组和垂直组合数组
当前路径:http://www.mswzjz.cn/qtweb/news7/256657.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能