主頁 > 知識庫 > numpy.sum()的使用詳解

numpy.sum()的使用詳解

熱門標簽:呼叫中心市場需求 語音系統(tǒng) 電話運營中心 Win7旗艦版 客戶服務 百度AI接口 企業(yè)做大做強 硅谷的囚徒呼叫中心

numpy的sum函數(shù)可接受的參數(shù)是:

sum(a, axis=None, dtype=None, out=None, keepdims=np._NoValue)

在參數(shù)列表中:
a是要進行加法運算的向量/數(shù)組/矩陣
axis的值可以為None,也可以為整數(shù)和元組
其形參的注釋如下:

a : array_like elements to sum.

a:用于進行加法運算的數(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ù)元組。
(在默認/缺省的情況下,axis取None)
如果axis取None,即將數(shù)組/矩陣中的元素全部加起來,得到一個和。

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的不同取值會產(chǎn)生不同的結果。

先以2×2的二維矩陣為例:

>>> np.sum([[0, 1], [0, 5]], axis=0)
array([0, 6])
>>> np.sum([[0, 1], [0, 5]], axis=1)
array([1, 5])

在上述例子中

  • 當axis為0時,是壓縮行,即將每一列的元素相加,將矩陣壓縮為一行
  • 當axis為1時,是壓縮列,即將每一行的元素相加,將矩陣壓縮為一列(這里的一列是為了方便理解說的,實際上,在控制臺的輸出中,仍然是以一行的形式輸出的)

具體理解如圖:

  • 當axis取負數(shù)的時候,對于二維矩陣,只能取-1和-2(不可超過矩陣的維度)。
  • 當axis=-1時,相當于axis=1的效果,當axis=-2時,相當于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

另外,需要注意的是:如果要輸入兩個數(shù)組/矩陣/向量進行相加,那么就要先把兩個數(shù)組/矩陣/向量用一個括號括起來,形成一個元組,這樣才能夠進行相加。因為numpy.sum的運算實現(xiàn)本質是通過矩陣內部的運算實現(xiàn)的。

當然,如果只是向量/數(shù)組之間做加法運算,可以直接讓兩個向量/數(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]

到此這篇關于numpy.sum()的使用詳解的文章就介紹到這了,更多相關numpy.sum()使用內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 解決Numpy中sum函數(shù)求和結果維度的問題
  • python numpy中cumsum的用法詳解

標簽:崇左 安康 山西 山西 長沙 喀什 濟南 海南

巨人網(wǎng)絡通訊聲明:本文標題《numpy.sum()的使用詳解》,本文關鍵詞  ;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266