根据代码中运行的结果来看,主要由以下几种:
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代码:
1
2
3
4
5
6
7
8
9
10
|
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=?)的用法介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/u012283902/article/details/56481575