关于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 相关文章推荐
使用rpclib进行Python网络编程时的注释问题
May 06 Python
Python中创建字典的几种方法总结(推荐)
Apr 27 Python
浅谈Django自定义模板标签template_tags的用处
Dec 20 Python
Python 从一个文件中调用另一个文件的类方法
Jan 10 Python
python多进程下实现日志记录按时间分割
Jul 22 Python
Django 自动生成api接口文档教程
Nov 19 Python
python socket通信编程实现文件上传代码实例
Dec 14 Python
利用keras加载训练好的.H5文件,并实现预测图片
Jan 24 Python
python判断两个序列的成员是否一样的实例代码
Mar 01 Python
利用python生成照片墙的示例代码
Apr 09 Python
pycharm导入源码的具体步骤
Aug 04 Python
Numpy实现卷积神经网络(CNN)的示例
Oct 09 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
php数组函数序列之array_slice() - 在数组中根据条件取出一段值,并返回
2011/11/07 PHP
PHP使用socket发送HTTP请求的方法
2016/02/14 PHP
如何取得中文输入的真实长度?
2006/06/24 Javascript
javascript实现的网页局布刷新效果
2008/12/01 Javascript
Javascript 构造函数,公有,私有特权和静态成员定义方法
2009/11/30 Javascript
基于jquery的3d效果实现代码
2011/03/23 Javascript
Js如何判断客户端是PC还是手持设备简单分析
2012/11/22 Javascript
JavaScript var声明变量背后的原理示例解析
2013/10/12 Javascript
教你如何在 Javascript 文件里使用 .Net MVC Razor 语法
2014/07/23 Javascript
jQuery插件Tmpl的简单使用方法
2015/04/27 Javascript
JavaScript实现级联菜单的方法
2015/06/29 Javascript
JavaScript中省略元素对数组长度的影响
2016/10/26 Javascript
Cpage.js给组件绑定事件的实现代码
2017/08/31 Javascript
使用Fullpage插件快速开发整屏翻页的页面
2017/09/13 Javascript
Angular实现下拉框模糊查询功能示例
2018/01/03 Javascript
微信小程序页面缩放式侧滑效果的实现代码
2018/11/15 Javascript
vue 接口请求地址前缀本地开发和线上开发设置方式
2020/08/13 Javascript
在vue中嵌入外部网站的实现
2020/11/13 Javascript
Python标准异常和异常处理详解
2015/02/02 Python
python实现将html表格转换成CSV文件的方法
2015/06/28 Python
使用python打印十行杨辉三角过程详解
2019/07/10 Python
Python Web静态服务器非堵塞模式实现方法示例
2019/11/21 Python
python实现爱奇艺登陆密码RSA加密的方法示例详解
2020/05/27 Python
python删除文件、清空目录的实现方法
2020/09/23 Python
美国杰西潘尼官网:JCPenney
2019/06/12 全球购物
ASOS西班牙官网:英国在线时尚和美容零售商
2020/01/10 全球购物
荣耀俄罗斯官网:HONOR俄罗斯
2020/10/31 全球购物
秘书专业自荐信范文
2013/12/26 职场文书
保密工作责任书
2014/04/16 职场文书
销售活动策划方案
2014/08/26 职场文书
小学校园广播稿(3篇)
2014/09/19 职场文书
法人代表资格证明书
2015/06/18 职场文书
Python实现byte转integer
2021/06/03 Python
总结几个非常实用的Python库
2021/06/26 Python
css中:last-child不生效的解决方法
2022/08/05 HTML / CSS
服务器nginx权限被拒绝解决案例
2022/09/23 Servers