关于numpy数组轴的使用详解


Posted in Python onDecember 05, 2019

概述

按照图一中aixs=0,对aixs=0上下对应的数据进行相加在学习numpy的时候,最难理解的就是轴的概念,我们知道坐标系中有轴的概念,那么两个轴是否有关联呢?为了便于理解,特写此博客进行梳理。

正文

首先数组的维数比较好理解,下面我们创建一个数组:

import numpy as np
# 创建一个三维数组
b=np.arange(24).reshape(4,3,2)

打印结果:

[[[ 0 1]
 [ 2 3]
 [ 4 5]]
 
 [[ 6 7]
 [ 8 9]
 [10 11]]
 
 [[12 13]
 [14 15]
 [16 17]]

b 是一个三维数组:

第一维有三个元素

第二维有三个元素

第三维有四个元素

上面的数据也可以用下列方式展示(图一)

关于numpy数组轴的使用详解

对于下面按照aixs=0进行sum:

print(b.sum(0))

按照图一中aixs=0,对aixs=0上下对应的数据进行相加,数据从(4,3,2)降维到(3,2)

[[0+ 6+12+18=36  1+ 7+13+19=40]
 [2+ 8+14+20=44  3+ 9+15+21=48]
 [4+10+16+22=52  5+11+17+23=56]]

对于下面按照aixs=1进行sum:

print(b.sum(1))

按照图一中aixs=1,按照比1小的轴对数据进行划分(即aixs=0),然后对划分的每一部分中数据中的aixs=1上下对应的数据进行相加,数据从(4,3,2)降维到(4,2)

[[ 0+ 2+ 4=6  1+ 3+ 5=9]
 [ 6+ 8+10=24 7+ 9+11=27]
 [12+14+16=42 13+15+17=45]
 [18+20+22=60 19+21+23+63]]

对于下面按照aixs=2进行sum:

print(b.sum(2))

按照图一中aixs=2,按照比2小的轴对数据进行划分(即aixs=0,aixs=1),然后对划分的每一部分中数据中的aixs=2上下对应的数据进行相加,数据从(4,3,2)降维到(4,3)

[[ 0+ 1=1  2+ 3=5  4+ 5=9]
 [ 6+ 7=13 8+ 9=17 10+11=21]
 [12+13=25 14+15=29 16+17=33]
 [18+19=37 20+21=41 22+23=45]]

总结:

aixs的范围是0到数组的维数(不包括维数)

轴的划分是按照维数进行

相加时按照轴进行对象相加,但是不能跨越比当前轴低的轴

以上这篇关于numpy数组轴的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python进程管理工具supervisor使用实例
Sep 17 Python
python提示No module named images的解决方法
Sep 29 Python
Python 使用os.remove删除文件夹时报错的解决方法
Jan 13 Python
用python记录运行pid,并在需要时kill掉它们的实例
Jan 16 Python
python实现两个文件合并功能
Apr 01 Python
Django学习教程之静态文件的调用详解
May 08 Python
python实现点对点聊天程序
Jul 28 Python
python中scikit-learn机器代码实例
Aug 05 Python
使用浏览器访问python写的服务器程序
Oct 10 Python
python 工具 字符串转numpy浮点数组的实现
Mar 14 Python
Selenium结合BeautifulSoup4编写简单的python爬虫
Nov 06 Python
Python控制台输出俄罗斯方块移动和旋转功能
Apr 18 Python
python 字典访问的三种方法小结
Dec 05 #Python
python 实现dict转json并保存文件
Dec 05 #Python
numpy 声明空数组详解
Dec 05 #Python
Numpy将二维数组添加到空数组的实现
Dec 05 #Python
numpy.ndarray 实现对特定行或列取值
Dec 05 #Python
numpy ndarray 取出满足特定条件的某些行实例
Dec 05 #Python
使用 Supervisor 监控 Python3 进程方式
Dec 05 #Python
You might like
打造计数器DIY三步曲(下)
2006/10/09 PHP
复杂检索数据并分页显示的处理方法
2006/10/09 PHP
如何使用PHP给图片加水印
2016/10/12 PHP
php中的异常和错误浅析
2017/05/03 PHP
thinkPHP框架通过Redis实现增删改查操作的方法详解
2019/05/13 PHP
jQuery 中关于CSS操作部分使用说明
2007/06/10 Javascript
JQuery Ajax 跨域访问的解决方案
2010/03/12 Javascript
Jquery 扩展方法
2010/05/06 Javascript
JS实现遮罩层效果的简单实例
2013/11/12 Javascript
jQuery中阻止冒泡事件的方法介绍
2014/04/12 Javascript
JavaScript中的分号插入机制详细介绍
2015/02/11 Javascript
简介可以自动完成UI的AngularJS工具angular-smarty
2015/06/23 Javascript
javascript实现无法关闭的弹框
2016/11/27 Javascript
微信小程序 开发之顶部导航栏实例代码
2017/02/23 Javascript
vue2 中如何实现动态表单增删改查实例
2017/06/09 Javascript
详解如何将 Vue-cli 改造成支持多页面的 history 模式
2017/11/20 Javascript
微信小程序实现图片懒加载的示例代码
2017/12/13 Javascript
详解React-Router中Url参数改变页面不刷新的解决办法
2018/05/08 Javascript
详解JavaScript中的数组合并方法和对象合并方法
2018/05/11 Javascript
jQuery事件blur()方法的使用实例讲解
2019/03/30 jQuery
在vue中axios设置timeout超时的操作
2020/09/04 Javascript
Python3.6简单操作Mysql数据库
2017/09/12 Python
python实现集中式的病毒扫描功能详解
2019/07/09 Python
python 动态迁移solr数据过程解析
2019/09/04 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
PyQt5如何将.ui文件转换为.py文件的实例代码
2020/05/26 Python
安装不同版本的tensorflow与models方法实现
2021/02/20 Python
State Cashmere官网:半零售价可持续蒙古羊绒
2020/02/26 全球购物
俄罗斯童装网上商店:BebaKids
2020/06/06 全球购物
工程项目经理岗位职责
2013/12/15 职场文书
贯彻学习两会心得体会范文
2014/03/17 职场文书
师德师风自我剖析材料
2014/09/27 职场文书
培训师岗位职责
2015/02/14 职场文书
入党个人总结范文
2015/03/02 职场文书
全国劳模先进事迹材料(2016精选版)
2016/02/25 职场文书
Python批量将csv文件转化成xml文件的实例
2021/05/10 Python