axis = 0
axis = 0表示对最外层[]里的最大单位块做块与块之间的运算,同时移除最外层[]:
示例1:
a= np.array([1,2,3])
print(a.sum(axis = 0)) #最外层[]里最大单位块为1,2,3,求其和1+2+3=6,再去掉最外层[]
print(a.mean(axis = 0)) #最外层[]里最大单位块为1,2,3,求其均值1/3*(1+2+3)=2,再去掉最外层[]
6
2.0
示例2:
a= np.array([[1,2],[3,4]])
print(a.sum(axis = 0)) #最外层[]里最大单位块为[1,2],[3,4],求其和[1,2]+[3,4]=[4,6],再去掉最外层[]
print(a.mean(axis = 0)) #最外层[]里最大单位块为[1,2],[3,4],求其和1/2*([1,2]+[3,4])=[2,3],再去掉最外层[]
[4 6]
[2. 3.]
示例3:
a= np.array([[[1,2],[3,4]],[[2,3],[3,4]]])
print(a.sum(axis = 0)) #最外层[]里最大单位块为[[1,2],[3,4]],[[2,3],[3,4]]求其和[[1,2],[3,4]]+[[2,3],[3,4]]=[[3 5] [6 8]],再去掉最外层[]
print(a.mean(axis = 0))
[[3 5]
[6 8]]
[[1.5 2.5]
[3. 4. ]]
axis = 1
axis= 1表示对第二外层[]里的最大单位块做块与块之间的运算,同时移除第二外层[]:
一维数组只有axis = 0
示例1:
a= np.array([[1,2],[3,4]])
print(a.sum(axis = 1)) #第二层[]里最大单位块有两组,1,2和3,4,计算的[[3],[7]],再去掉第二层[]
print(a.mean(axis = 1))
[3 7]
[1.5 3.5]
示例2:
a = np.array([[[1,2],[3,4]],[[5,5],[6,6]]])#[[1,2],[3,4]]和[[5,5],[6,6]],每块之间进行运算
a.sum(axis = 1)
array([[ 4, 6],
[11, 11]])