4
我有一個3d numpy陣列,我的目標是得到它的平均值/模式/中值。三維numpy陣列的模式/中值/均值
它的[500,300,3]
的形狀,我想獲得,例如:
[430,232,22]隨着模式
有沒有辦法做到這一點?標準的np.mean(數組)給了我一個非常大的數組。
我不知道這是真的嗎?
weather_image.mean(axis=0).mean(axis=0)
它給我的3
我有一個3d numpy陣列,我的目標是得到它的平均值/模式/中值。三維numpy陣列的模式/中值/均值
它的[500,300,3]
的形狀,我想獲得,例如:
[430,232,22]隨着模式
有沒有辦法做到這一點?標準的np.mean(數組)給了我一個非常大的數組。
我不知道這是真的嗎?
weather_image.mean(axis=0).mean(axis=0)
它給我的3
的長度你想沿着前兩個軸獲得平均/中位數/模一維數組NP。這應該工作:
data = np.random.randint(1000, size=(500, 300, 3))
>>> np.mean(data, axis=(0, 1)) # in nunpy >= 1.7
array([ 499.06044 , 499.01136 , 498.60614667])
>>> np.mean(np.mean(data, axis=0), axis=0) # in numpy < 1.7
array([ 499.06044 , 499.01136 , 498.60614667])
>>> np.median(data.reshape(-1, 3), axis=0)
array([ 499., 499., 498.]) # mode
>>> np.argmax([np.bincount(x) for x in data.reshape(-1, 3).T], axis=1)
array([240, 519, 842], dtype=int64)
注意,np.median
需要一個扁平的陣列,因此重塑。並且計數僅處理一維輸入,因此列表理解,加上一點換位魔術的拆包。
任何想法,請讓我知道 –