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 相关文章推荐
用django-allauth实现第三方登录的示例代码
Jun 24 Python
解决python多行注释引发缩进错误的问题
Aug 23 Python
自适应线性神经网络Adaline的python实现详解
Sep 30 Python
python编写猜数字小游戏
Oct 06 Python
python基于gevent实现并发下载器代码实例
Nov 01 Python
为什么黑客都用python(123个黑客必备的Python工具)
Jan 31 Python
使用python客户端访问impala的操作方式
Mar 28 Python
Jupyter Notebook 文件默认目录的查看以及更改步骤
Apr 14 Python
Jupyter Notebook安装及使用方法解析
Nov 12 Python
python实现简易名片管理系统
Apr 11 Python
python实现网络五子棋
Apr 11 Python
python控制台打印log输出重复的解决方法
May 14 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
星际争霸 Starcraft 游戏介绍
2020/03/14 星际争霸
PHP 操作文件的一些FAQ总结
2009/02/12 PHP
php metaphone()函数的定义和用法
2016/05/15 PHP
javascript for循环从入门到偏门(效率优化+奇特用法)
2012/08/01 Javascript
调试Javascript代码(浏览器F12及VS中debugger关键字)
2013/01/25 Javascript
ExtJS4中的requires使用方法示例介绍
2013/12/03 Javascript
jquery如何获取复选框的值
2013/12/12 Javascript
javaScript中的this示例学习详解及工作原理
2014/01/13 Javascript
javascript数组操作(创建、元素删除、数组的拷贝)
2014/04/07 Javascript
使用JavaScript的ActiveXObject对象检测应用程序是否安装的方法
2014/04/15 Javascript
js调试系列 初识控制台
2014/06/18 Javascript
基于Jquery+Ajax+Json实现分页显示附效果图
2014/07/30 Javascript
使用text方法获取Html元素文本信息示例
2014/09/01 Javascript
完美兼容各大浏览器的jQuery仿新浪图文淡入淡出间歇滚动特效
2014/11/12 Javascript
使用AngularJS制作一个简单的RSS阅读器的教程
2015/06/18 Javascript
JavaScript核心语法总结(推荐)
2016/06/02 Javascript
JavaScript直播评论发弹幕切图功能点集合效果代码
2016/06/26 Javascript
angularjs ocLazyLoad分步加载js文件实例
2017/01/17 Javascript
nodejs+express实现文件上传下载管理网站
2017/03/15 NodeJs
AngualrJs清除定时器遇到的坑
2017/10/13 Javascript
Angular2学习笔记之数据绑定的示例代码
2018/01/03 Javascript
Angular短信模板校验代码
2020/09/23 Javascript
Vue组件生命周期运行原理解析
2020/11/25 Vue.js
python使用PyGame绘制图像并保存为图片文件的方法
2015/04/24 Python
Python在图片中插入大量文字并且自动换行
2019/01/02 Python
在Pycharm中将pyinstaller加入External Tools的方法
2019/01/16 Python
浅谈keras通过model.fit_generator训练模型(节省内存)
2020/06/17 Python
Django haystack实现全文搜索代码示例
2020/11/28 Python
python爬虫智能翻页批量下载文件的实例详解
2021/02/02 Python
在线购买澳大利亚设计师手拿包和奢华晚装手袋:Olga Berg
2019/03/20 全球购物
打架检讨书800字
2014/01/10 职场文书
竞选部门副经理的自荐书范文
2014/02/11 职场文书
美术第二课堂活动总结
2014/07/08 职场文书
少先队工作总结2015
2015/05/13 职场文书
写给同事的离职感言
2015/08/04 职场文书
民警忠诚教育心得体会
2016/01/23 职场文书