python numpy--数组的组合和分割实例


Posted in Python onFebruary 24, 2020

数组的组合主要有:

1.水平组合:np.hstack(arr1,arr2) 或 concatenate(arr1,arr2,axis=1)
2.垂直组合:np.vstack(arr1,arr2) 或 concatenate(arr1,arr2,axis=0)
3.深度组合:np.dstack(arr1,arr2)
4.列组合:np.column_stack(arr1,arr2)
5.行组合:np.row_stack(arr1,arr2)

数组的分割主要有:

1.水平分割:np.split(arr,n,axis=1) 或 np.hsplit(arr,n)
2.垂直分割:np.split(arr,n,axis=0) 或 np.vsplit(arr,n)
3.深度分割:np.dsplit(arr,n)

接下来一一举例

一、数组的组合

1.水平组合

语法:

np.hstack(arr1,arr2)
concatenate(arr1,arr2,axis=1)

水平方向上直接拼接起来

# 准备两个数组
m=np.arange(9).reshape(3,3)
doubleM=m*2

m:

python numpy--数组的组合和分割实例

doubleM:

python numpy--数组的组合和分割实例

#hstack()
np.hstack((m,doubleM)) 
# concatenate()
np.concatenate((m,doubleM),axis=1)

python numpy--数组的组合和分割实例

2.垂直组合

语法:

np.vstack(arr1,arr2)
concatenate(arr1,arr2,axis=0)

将第二个数组拼接在第一个数组的垂直方向上。

还是用刚刚的m 和doubleM这两个数组。

# vstack()
np.vstack((m,doubleM))
# concatenate()
np.concatenate((m,doubleM),axis=0)

python numpy--数组的组合和分割实例

3.深度组合

语法:np.dstack(arr1,arr2)

就是将一系列数组沿着纵轴(深度)方向进行层叠组合。

还是用刚刚的m和doubleM两个数组。

np.dstack((m,doubleM))

python numpy--数组的组合和分割实例

注意:

(1)新的数据的维度是原数据行列以及个数相关。

(2)维度不同的两个数组不能进行组合

4.列组合

语法:np.column_stack(arr1,arr2)

column_stack函数对于一维数组是深度组合;

对多维数组就是与hstack的效果一样,直接水平方向拼接起来

(1) 两个一维数组进行列组合

m1=np.arange(3)
print(m1)
np.column_stack((m1,m1*2))
[0 1 2]

array([[0, 0],
[1, 2],
[2, 4]])

(2)一维数组与多维数组进行组合

将一维数组的每一个数字分配到多维数组的每一列中去,因此,一维数组的数字个数一定要与多维数组的行相同才能够进行组合。

m1:[0 1 2]

m:

python numpy--数组的组合和分割实例

np.column_stack((m1,m))

python numpy--数组的组合和分割实例

(3)多维数组与多维数组进行列组合

可以看出来是直接进行水平方向的组合的

np.column_stack((m,doubleM))

python numpy--数组的组合和分割实例

5.行组合

语法:np.row_stack(arr1,arr2)

对于一维数组来说,无论几个一维数组,直接叠起来组成二维数组;

对于多维数组来说,就是垂直方向上的组合(vstack)

(1)两个一维数组进行行组合

np.row_stack((m,doubleM))

python numpy--数组的组合和分割实例

(2)多维数组进行行组合

注意一定要相同维度的多维数组才能进行行组合!!!

二、数组的分割

1.水平分割

是在水平方向上进行分割,所以是竖着划一刀的。

语法:

np.split(arr,n,axis=1)
np.hsplit()

arr1=np.arange(16).reshape(4,4)
print(arr1)
np.split(arr1,2,axis=1)
# np.hsplit(arr1,2)

python numpy--数组的组合和分割实例

注意:分割的分数要可以整出的才行

2.垂直分割

沿着垂直方向上进行分割,因此是分出来是行

语法:

np.split(arr,n,axis=0)
np.vsplit(arr)

arr=np.arange(9).reshape(3,3)
arr

python numpy--数组的组合和分割实例

np.split(arr,3,axis=0)
np.vsplit(arr,3)

python numpy--数组的组合和分割实例

3.深度分割

注意:深度分割只能分割3个维度以上的

语法:语法:dsplit(arr,n)

arr1=np.arange(8).reshape(2,2,2)
arr1

python numpy--数组的组合和分割实例

np.dsplit(arr1,2)

python numpy--数组的组合和分割实例

以上这篇python numpy--数组的组合和分割实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现在字符串中查找子字符串的方法
Jul 11 Python
在Django框架中伪造捕捉到的URLconf值的方法
Jul 18 Python
Python-OpenCV基本操作方法详解
Apr 02 Python
Python使用Flask-SQLAlchemy连接数据库操作示例
Aug 31 Python
Windows下安装Scrapy
Oct 17 Python
python matplotlib画图库学习绘制常用的图
Mar 19 Python
Django后台admin的使用详解
Jul 08 Python
Python中socket网络通信是干嘛的
May 27 Python
django跳转页面传参的实现
Sep 17 Python
详解Python 中的 defaultdict 数据类型
Feb 22 Python
Python Django获取URL中的数据详解
Nov 01 Python
Python+OpenCV实现图片中的圆形检测
Apr 07 Python
python梯度下降算法的实现
Feb 24 #Python
利用python实现逐步回归
Feb 24 #Python
python数据分析:关键字提取方式
Feb 24 #Python
python数据预处理 :数据共线性处理详解
Feb 24 #Python
使用python实现多维数据降维操作
Feb 24 #Python
python数据预处理 :数据抽样解析
Feb 24 #Python
Python找出列表中出现次数最多的元素三种方式
Feb 24 #Python
You might like
php中使用Akismet防止垃圾评论的代码
2011/06/10 PHP
使用php判断网页是否gzip压缩
2013/06/25 PHP
php使用PDO执行SQL语句的方法分析
2017/02/16 PHP
php+redis实现商城秒杀功能
2020/11/19 PHP
在JavaScript中使用inline函数的问题
2007/03/08 Javascript
妙用Jquery的val()方法
2012/06/27 Javascript
JS中Iframe之间传值及子页面与父页面应用
2013/03/11 Javascript
js定时调用方法成功后并停止调用示例
2014/04/08 Javascript
javascript的alert box在java中如何显示多行
2014/05/18 Javascript
jQuery中:eq()选择器用法实例
2014/12/29 Javascript
修改或扩展jQuery原生方法的代码实例
2015/01/13 Javascript
jquery简单的弹出层浮动层代码
2015/04/27 Javascript
一起学写js Calender日历控件
2016/04/14 Javascript
AngularJS创建自定义指令的方法详解
2016/11/03 Javascript
去掉vue 中的代码规范检测两种方法(Eslint验证)
2018/03/21 Javascript
如何利用JavaScript编写一个格斗小游戏
2021/01/06 Javascript
使用setup.py安装python包和卸载python包的方法
2013/11/27 Python
初步剖析C语言编程中的结构体
2016/01/16 Python
深入理解NumPy简明教程---数组3(组合)
2016/12/17 Python
详解K-means算法在Python中的实现
2017/12/05 Python
wxpython实现图书管理系统
2018/03/12 Python
用pandas按列合并两个文件的实例
2018/04/12 Python
Python数据可视化之画图
2019/01/15 Python
Django框架验证码用法实例分析
2019/05/10 Python
python批量修改图片尺寸,并保存指定路径的实现方法
2019/07/04 Python
python内置函数sorted()用法深入分析
2019/10/08 Python
Python中bisect的使用方法
2019/12/31 Python
Python图像处理库PIL中图像格式转换的实现
2020/02/26 Python
在pycharm中创建django项目的示例代码
2020/05/28 Python
HTML5微信播放全屏问题的解决方法
2017/03/09 HTML / CSS
任命书模板
2014/06/04 职场文书
计算机软件专业求职信
2014/06/10 职场文书
2014年学校领导班子对照检查材料
2014/09/19 职场文书
法院干警四风问题自我剖析材料
2014/09/29 职场文书
2015年上半年物业工作总结
2015/03/30 职场文书
62句有关感恩节文案(推荐收藏)
2019/11/28 职场文书