python中array.sum(axis=?)的用法

來源:互聯網
上載者:User

根據代碼中啟動並執行結果來看,主要由以下幾種:

1. sum():將array中每個元素相加的結果

2. axis對應的是維度相加。

比如:

1、axis=0時,對飲搞得是第一個維度元素的相加,

[[0,1,2,3],[4,5,6,7]]和[[1,2,3,4],[5,6,7,8]]對應元素相加[[0+4,1+2,2+3,3+4],[4+5,5+6,7+7,7+8]]=[[1,3,5,7],[9,11,14,16]]


2、axis=1時, 對應的是第二個維度元素相加,這時候保留第一個維度結構(第一個維度元素的個數),

第一個維度元素的個數為2。分別是

[[0,1,2,3],[4,5,6,7]]和[[1,2,3,4],[5,6,7,8]]

結構不變,繼續向下拆分,可得
(1)[0,1,2,3]和[4,5,6,7], 對應元素相加, 合并到一個數組中, [4,6,8,10]
(2)[1,2,3,4]和[5,6,7,8], 對應元素相加, 合并到一個數組中, ,6,8,10,12]

3、當axis=2時, 因為元素一共是三維,這就到了最後一個維度,將最小單位的數組元素相加即可。

[0+1+2+3,4+5+6+7],[[1+2+3+4],[5+6+7+8]]=[[6,22],[10,26]]


python代碼:

import numpy as npdata=np.array([[[0,1,2,3],[4,5,6,7]],[[1,2,3,4],[5,6,7,8]]])sum=data.sum()sum0=data.sum(axis=0)sum1=data.sum(axis=1)sum2=data.sum(axis=2)print "sum: ",sumprint "axis=0: ",sum0print "axis=1: ",sum1print "axis=2: ",sum2

結果:


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.