numpy.sum()的使用詳解
numpy的sum函數(shù)可接受的參數(shù)是:
sum(a, axis=None, dtype=None, out=None, keepdims=np._NoValue)
在參數(shù)列表中:
a是要進(jìn)行加法運(yùn)算的向量/數(shù)組/矩陣
axis的值可以為None,也可以為整數(shù)和元組
其形參的注釋如下:
a : array_like elements to sum.
a:用于進(jìn)行加法運(yùn)算的數(shù)組形式的元素
axis : None or int or tuple of ints, optional
Axis or axes along which a sum is performed.
The default, axis=None, will sum all of the elements of the input array.
If axis is negative it counts from the last to the first axis.
If axis is a tuple of ints, a sum is performed on all of the axes
specified in the tuple instead of a single axis or all the axes as before.
根據(jù)上文,可知:
axis的取值有三種情況:1.None,2.整數(shù), 3.整數(shù)元組。
(在默認(rèn)/缺省的情況下,axis取None)
如果axis取None,即將數(shù)組/矩陣中的元素全部加起來,得到一個(gè)和。
Example:
>>> np.sum([0.5, 1.5]) 2.0 >>> np.sum([0.5, 0.7, 0.2, 1.5], dtype=np.int32) 1 >>> np.sum([[0, 1], [0, 5]]) 6
如果axis為整數(shù),axis的取值不可大于數(shù)組/矩陣的維度,且axis的不同取值會(huì)產(chǎn)生不同的結(jié)果。
先以2×2的二維矩陣為例:
>>> np.sum([[0, 1], [0, 5]], axis=0) array([0, 6]) >>> np.sum([[0, 1], [0, 5]], axis=1) array([1, 5])
在上述例子中
- 當(dāng)axis為0時(shí),是壓縮行,即將每一列的元素相加,將矩陣壓縮為一行
- 當(dāng)axis為1時(shí),是壓縮列,即將每一行的元素相加,將矩陣壓縮為一列(這里的一列是為了方便理解說的,實(shí)際上,在控制臺(tái)的輸出中,仍然是以一行的形式輸出的)
具體理解如圖:
- 當(dāng)axis取負(fù)數(shù)的時(shí)候,對(duì)于二維矩陣,只能取-1和-2(不可超過矩陣的維度)。
- 當(dāng)axis=-1時(shí),相當(dāng)于axis=1的效果,當(dāng)axis=-2時(shí),相當(dāng)于axis=0的效果。
如果axis為整數(shù)元組(x,y),則是求出axis=x和axis=y情況下得到的和。
繼續(xù)以上面的2×2矩陣為例
>>>np.sum([[0,1],[0,5]],axis=(0,1)) >>>6 >>>np.sum([[0,1],[0,5]],axis=(1,0)) >>>6
另外,需要注意的是:如果要輸入兩個(gè)數(shù)組/矩陣/向量進(jìn)行相加,那么就要先把兩個(gè)數(shù)組/矩陣/向量用一個(gè)括號(hào)括起來,形成一個(gè)元組,這樣才能夠進(jìn)行相加。因?yàn)閚umpy.sum的運(yùn)算實(shí)現(xiàn)本質(zhì)是通過矩陣內(nèi)部的運(yùn)算實(shí)現(xiàn)的。
當(dāng)然,如果只是向量/數(shù)組之間做加法運(yùn)算,可以直接讓兩個(gè)向量/數(shù)組相加,但前提是它們必須為numpy的array數(shù)組才可以,否則只是單純的列表相加
Example:
>>>v1 = [1, 2] >>>v2 = [3, 4] >>>v1 + v2 [1, 2, 3, 4] >>>v1 = numpy.array[1, 2] >>>v2 = numpy.array[3, 4] >>>v1 + v2 [4, 6]
到此這篇關(guān)于numpy.sum()的使用詳解的文章就介紹到這了,更多相關(guān)numpy.sum()使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python列表推導(dǎo)式實(shí)現(xiàn)代碼實(shí)例
這篇文章主要介紹了Python列表推導(dǎo)式實(shí)現(xiàn)代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09Scrapy基于selenium結(jié)合爬取淘寶的實(shí)例講解
今天小編就為大家分享一篇Scrapy基于selenium結(jié)合爬取淘寶的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-06-06LangChain簡(jiǎn)化ChatGPT工程復(fù)雜度使用詳解
這篇文章主要為大家介紹了LangChain簡(jiǎn)化ChatGPT工程復(fù)雜度使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03Python算法之求n個(gè)節(jié)點(diǎn)不同二叉樹個(gè)數(shù)
本文先向大家分享了建立二叉樹的簡(jiǎn)單代碼,其次介紹了Python計(jì)算n個(gè)節(jié)點(diǎn)不同二叉樹個(gè)數(shù)的問題及實(shí)現(xiàn)代碼示例,具有一定參考價(jià)值,需要的朋友可以了解下。2017-10-10python?字符串索引取值的實(shí)現(xiàn)示例
本文主要介紹了python?字符串索引取值的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07使用Python獲取當(dāng)前工作目錄和執(zhí)行命令的位置
這篇文章主要介紹了使用Python獲取當(dāng)前工作目錄和執(zhí)行命令的位置,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-03-03Python實(shí)現(xiàn)自定義包的實(shí)例詳解
這篇文章主要介紹了實(shí)現(xiàn)自定義包的方法,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-12-12