解決Numpy中sum函數(shù)求和結(jié)果維度的問題
使用Numpy(下面簡稱np)中的sum函數(shù)對某一維度求和時,由于該維度會在求和后變成一個數(shù),所以所得結(jié)果的這一維度為空。
比如下面的例子:
a = np.array([[1,2,3],[4,5,6]]) b = np.sum(a,axis=1) print(b.shape) # (2,)
所以,對于一個shape為(2,3)的數(shù)組,在默認(rèn)情況下使用np.sum函數(shù)求和后得到的結(jié)果shape是 (2,),如果我們想得到的是(2,1)的shape怎么辦?比如Ng的深度學(xué)習(xí)編程練習(xí)中Course 1 Assignment 4就要求這樣。使用reshape函數(shù)當(dāng)然可以,只是沒有必要,太麻煩了一點不優(yōu)雅。我們可以使用通過設(shè)置keepdims參數(shù)實現(xiàn),還是這個例子:
a = np.array([[1,2,3],[4,5,6]]) b = np.sum(a,axis=1,keepdims=True) print(b.shape) # (2,1)
(2,1)和(2,)的shape之間不同參見 What's the difference between (N,) and (N,1) in Numpy? —Stackoverflow
這里有個小例子可以幫助理解:
a = np.ones((5,)) b = np.ones((5,1)) print(a) # [1. 1. 1. 1. 1.] print(b) # [[1.] # [1.] # [1.] # [1.] # [1.]]
以上這篇解決Numpy中sum函數(shù)求和結(jié)果維度的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Centos下實現(xiàn)安裝Python3.6和Python2共存
這篇文章主要介紹了Centos下實現(xiàn)安裝Python3.6和Python2共存,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08Python求算數(shù)平方根和約數(shù)的方法匯總
這篇文章主要介紹了 Python求算數(shù)平方根和約數(shù)的方法匯總的相關(guān)資料,需要的朋友可以參考下2016-03-03Python實現(xiàn)PPT/PPTX批量轉(zhuǎn)換成PDF
這篇文章主要為大家詳細(xì)介紹了如何使用Python將PowerPoint演示文稿(PPT、PPTX等)轉(zhuǎn)換為PDF文件,使演示內(nèi)容能夠在更多的設(shè)備上展示,感興趣的小伙伴可以了解下2024-01-01python通過pillow識別動態(tài)驗證碼的示例代碼
在上網(wǎng)時,經(jīng)常會遇到驗證碼,本次試驗將帶領(lǐng)大家認(rèn)識驗證碼的一些特性,并利用 Python 中的 pillow 庫完成對驗證碼的破解。感興趣的可以了解一下2021-11-11