根据代码中运行的结果来看,主要由以下几种:
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=?)的用法介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。