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字符串逐字符或逐词反转方法
May 21 Python
Python OS模块常用函数说明
May 23 Python
Python中Django框架利用url来控制登录的方法
Jul 25 Python
Python自定义线程类简单示例
Mar 23 Python
对python中的logger模块全面讲解
Apr 28 Python
pandas.DataFrame删除/选取含有特定数值的行或列实例
Nov 07 Python
对python多线程与global变量详解
Nov 09 Python
通过python扫描二维码/条形码并打印数据
Nov 14 Python
TensorFlow tf.nn.softmax_cross_entropy_with_logits的用法
Apr 19 Python
Python tkinter实现简单加法计算器代码实例
May 13 Python
基于OpenCV的路面质量检测的实现
Nov 04 Python
Django 用户认证Auth组件的使用
Nov 30 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
对squid中refresh_pattern的一些理解和建议
2009/04/17 PHP
php 过滤危险html代码
2009/06/29 PHP
解析php做推送服务端实现ios消息推送
2013/07/01 PHP
PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
2014/11/20 PHP
PHP框架Laravel中实现supervisor执行异步进程的方法
2017/06/07 PHP
Django中的cookie与session操作实例代码
2017/08/17 PHP
thinkphp5.1 框架钩子和行为用法实例分析
2020/05/25 PHP
jquery 页面滚动到指定DIV实现代码
2013/09/25 Javascript
jQuery实现判断滚动条到底部
2015/06/23 Javascript
JavaScript中var关键字的使用详解
2015/08/14 Javascript
JS采用绝对定位实现回到顶部效果完整实例
2016/06/20 Javascript
jQuery实现可拖拽3D万花筒旋转特效
2017/01/03 Javascript
vue实现app页面切换动画效果实例
2017/05/23 Javascript
JS实现按钮颜色切换效果
2020/09/05 Javascript
vue中tab选项卡的实现思路
2018/11/25 Javascript
JS栈stack类的实现与使用方法示例
2019/01/31 Javascript
微信小程序全局变量的设置、使用、修改过程解析
2019/09/24 Javascript
详解在Python和IPython中使用Docker
2015/04/28 Python
python下os模块强大的重命名方法renames详解
2017/03/07 Python
python 字符串转列表 list 出现\ufeff的解决方法
2017/06/22 Python
Python中input与raw_input 之间的比较
2017/08/20 Python
使用python爬取B站千万级数据
2018/06/08 Python
python requests 测试代理ip是否生效
2018/07/25 Python
python opencv实现直线检测并测出倾斜角度(附源码+注释)
2020/12/31 Python
HTML5混合开发二维码扫描以及调用本地摄像头
2017/12/27 HTML / CSS
男女钓鱼靴和甲板鞋:XTRATUF
2021/01/09 全球购物
英国豪华家具和经典家居饰品购物网站:OKA
2020/06/05 全球购物
注塑工厂厂长岗位职责
2013/12/02 职场文书
营销总经理的岗位职责
2013/12/15 职场文书
幼儿园开学家长寄语
2014/01/19 职场文书
小学生打架检讨书
2014/01/26 职场文书
电气工程及其自动化专业求职信
2014/06/23 职场文书
四大名著读书笔记
2015/06/25 职场文书
心得体会格式及范文
2016/01/25 职场文书
vue 实现弹窗关闭后刷新效果
2022/04/08 Vue.js
Hive导入csv文件示例
2022/06/25 数据库