numpy中方法參數axis取值理解
首先不要使用什麼橫縱軸去理解,因爲時間長了就忘記了,而且如果a是一個三維數組就沒法解釋了。
axis等於0時,在shape中表示的是二維數組。那麼np.amin(a,0)方法就是求二維數組對應元素的最小值,最終的結果的shape 正好是3個一維數組,一個一維數組是4個元素
[ axis = 0
[ axis = 1
[ axis = 2
[] axis = 3
]
]
]
import numpy as np
data = np.array(np.arange(24))
data = data.reshape((2,3,4))
print(data)
print(np.sum(data))
print(np.max(data))
print("最外層max:\n", np.max(data, axis = 0))
print("中間層max:\n", np.max(data, axis = 1))
print("最內層max:\n", np.max(data, axis = 2))
print("最外層sum:\n", np.sum(data, axis = 0))
print("中間層sum:\n", np.sum(data, axis = 1))
print("最內層sum:\n", np.sum(data, axis = 2))
#####################################################
### 輸出
#####################################################
276
23
[[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]]
最外層max:
[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]
中間層max:
[[ 8 9 10 11]
[20 21 22 23]]
最內層max:
[[ 3 7 11]
[15 19 23]]
最外層sum:
[[12 14 16 18]
[20 22 24 26]
[28 30 32 34]]
中間層sum:
[[12 15 18 21]
[48 51 54 57]]
最內層sum:
[[ 6 22 38]
[54 70 86]]
############################################################
解釋
當
array
爲3
維(2,3,4)時,
np.max(data, axis=0)
中axis=0
代表
最外層[ ]
符號中包含的元素(二維array)進行最大值比較