对python中array.sum(axis=?)的用法介绍

yipeiwu_com6年前Python基础

根据代码中运行的结果来看,主要由以下几种:

1. sum():将array中每个元素相加的结果

2. axis对应的是维度的相加。

比如:

1、axis=0时,对饮搞得是第一个维度元素的相加,

[[0,1,2,3],[4,5,6,7]]和[[1,2,3,4],[5,6,7,8]]对应元素相加[[0+4,1+2,2+3,3+4],[4+5,5+6,7+7,7+8]]=[[1,3,5,7],[9,11,14,16]]

2、axis=1时, 对应的是第二个维度元素相加,这时候保留第一个维度的结构(第一个维度元素的个数),

第一个维度元素的个数为2。分别是

[[0,1,2,3],[4,5,6,7]]和[[1,2,3,4],[5,6,7,8]]

结构不变,继续向下拆分,可得

(1)[0,1,2,3]和[4,5,6,7], 对应元素相加, 合并到一个数组中, [4,6,8,10]

(2)[1,2,3,4]和[5,6,7,8], 对应元素相加, 合并到一个数组中, ,6,8,10,12]

3、当axis=2时, 因为元素一共是三维,这就到了最后一个维度,将最小单位的数组元素相加即可。

[0+1+2+3,4+5+6+7],[[1+2+3+4],[5+6+7+8]]=[[6,22],[10,26]]

python代码:

import numpy as np
data=np.array([[[0,1,2,3],[4,5,6,7]],[[1,2,3,4],[5,6,7,8]]])
sum=data.sum()
sum0=data.sum(axis=0)
sum1=data.sum(axis=1)
sum2=data.sum(axis=2)
print "sum: ",sum
print "axis=0: ",sum0
print "axis=1: ",sum1
print "axis=2: ",sum2

结果:

以上这篇对python中array.sum(axis=?)的用法介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅谈PyQt5中异步刷新UI和Python多线程总结

目前任务需要做一个界面程序,PyQt是非常方便的选择,QT丰富的控件以及python方便的编程。近期遇到界面中执行一些后台任务时界面卡死的情况,解决了在这里记录下。 PyQt PyQt简...

在Python的Django框架中创建语言文件

当你标记了翻译字符串,你就需要写出(或获取已有的)对应的语言翻译信息。 这里就是它如何工作的。 地域限制 Django不支持把你的应用本地化到一个连它自己都还没被翻译的地域。 在这种情况...

Django框架教程之正则表达式URL误区详解

Django框架教程之正则表达式URL误区详解

前言 利用Django开发网站,可以设计出非常优美的url规则,如果url的匹配规则(包含正则表达式)组织得比较好,view的结构就会比较清晰,比较容易维护。但这其中可能会有一些误区,下...

python2.6.6如何升级到python2.7.14

python2.6.6如何升级到python2.7.14

其实网上有很多关于python2.6.6 升级到python2.7的文章,但是我对比这些类似的文章升级之后,发现其中有错误的地方,于是决定还是自己写一个真正的升级过程。 我的虚拟机里安装...

django基于存储在前端的token用户认证解析

django基于存储在前端的token用户认证解析

一.前提 首先是这个代码基于前后端分离的API,我们用了django的framework模块,帮助我们快速的编写restful规则的接口 前端token原理: 把(token=加密后的...