關於axis的計算可查看https://blog.csdn.net/qq_36829091/article/details/83444697
下面闡述對去括號[]的一點個人理解
解析:
當keepdims爲false時代表需要去掉多餘的括號,那麼去掉的是哪個括號呢。
這個去掉的括號是axis代表的層級。
- 當axis爲0去掉第0層(最外層)的括號,也就是圖中紅色的括號
- 當axis爲1去掉第1層(中間層)的括號,也就是圖中橙色的括號
- 當axis爲1去掉第2層(最內層)的括號,也就是圖中藍色的括號
代碼:
import numpy as np
temp = np.array([[[0, 1], [2, 3]], [[4, 5], [6, 7]]])
print("-------axis=None-------")
arr1 = np.sum(temp,axis= None, keepdims=True)
print(arr1)
print("----")
arr2 = np.sum(temp)
print(arr2)
print("-------axis=0-------")
arr3 = np.sum(temp, axis= 0, keepdims=True)
print(arr3)
print("----")
arr4 = np.sum(temp, axis= 0)
print(arr4)
print("-------axis=1-------")
arr5 = np.sum(temp, axis= 1, keepdims=True)
print(arr5)
print("----")
arr6 = np.sum(temp, axis= 1)
print(arr6)
print("-------axis=2-------")
arr7 = np.sum(temp, axis= 2, keepdims=True)
print(arr7)
print("----")
arr8 = np.sum(temp, axis= 2)
print(arr8)
輸出:
-------axis=None-------
[[[28]]]
----
28
-------axis=0-------
[[[ 4 6]
[ 8 10]]]
----
[[ 4 6]
[ 8 10]]
-------axis=1-------
[[[ 2 4]]
[[10 12]]]
----
[[ 2 4]
[10 12]]
-------axis=2-------
[[[ 1]
[ 5]]
[[ 9]
[13]]]
----
[[ 1 5]
[ 9 13]]