日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python中cumsum_python numpy中cumsum的用法详解

發布時間:2024/10/8 python 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python中cumsum_python numpy中cumsum的用法详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Cumsum :計算軸向元素累加和,返回由中間結果組成的數組

重點就是返回值是“由中間結果組成的數組”

以下代碼在python3.6版本運行成功!

下面看代碼,定義一個2*2*3的數組,所以其shape是2,2,3,索引分別0,1,2

shape

索引

2

0

2

1

3

2

代碼:

import numpy as np

arr = np.array([[[1,2,3],[8,9,12]],[[1,2,4],[2,4,5]]]) #2*2*3

print(arr.cumsum(0))

print(arr.cumsum(1))

print(arr.cumsum(2))

輸出結果:

#cumsum(0)

[[[ 1? 2? 3]

[ 8? 9 12]]

[[ 2? 4? 7]

[10 13 17]]]

#cumsum(1)

[[[ 1? 2? 3]

[ 9 11 15]]

[[ 1? 2? 4]

[ 3? 6? 9]]]

#cumsum(2)

[[[ 1? 3? 6]

[ 8 17 29]]

[[ 1? 3? 7]

[ 2? 6 11]]]

注釋:

arr是一個2*2*3三維矩陣,索引值為0,1,2

cumsum(0):實現0軸上的累加:以最外面的數組元素為單位,以[[1,2,3],[8,9,12]]為開始實現后面元素的對應累加

cumsum(1):實現1軸上的累加:以中間數組元素為單位,以[1,2,3]為開始,實現后面元素的對應累加

cumsum(2):實現2軸上的累加:以最里面的元素為累加單位,即1為開始,實現后面的元素累加

四維數組實現

下面看一個四維數組2*2*2*4,索引值為0,1,2,3

代碼:

import numpy as np

arr = np.arange(32).reshape((2,2,2,4))

print(arr)

print(arr.cumsum(0))

print(arr.cumsum(1))

print(arr.cumsum(2))

print(arr.cumsum(3))

arr:

[[[[ 0 1 2 3]

[ 4 5 6 7]]

[[ 8 9 10 11]

[12 13 14 15]]]

[[[16 17 18 19]

[20 21 22 23]]

[[24 25 26 27]

[28 29 30 31]]]]

arr是一個2*2*2*4四維矩陣,索引值為0,1,2,3

cumsum(0):實現0軸上的累加即:以最外面數組元素為單位即

[[[ 0 1 2 3]

[ 4 5 6 7]]

[[ 8 9 10 11]

[12 13 14 15]]]

[[[16 17 18 19]

[20 21 22 23]]

[[24 25 26 27]

[28 29 30 31]]]]

對應位置元素相加起來

結果:

[[[[ 0 1 2 3]

[ 4 5 6 7]]

[[ 8 9 10 11]

[12 13 14 15]]]

[[[16 18 20 22]

[24 26 28 30]]

[[32 34 36 38]

[40 42 44 46]]]]

cumsum(1):實現1軸上的累加即:以次外面元素為單位,累加:

[[ 0 1 2 3]

[ 4 5 6 7]]

[[ 8 9 10 11]

[12 13 14 15]]

[[16 17 18 19]

[20 21 22 23]]

[[24 25 26 27]

[28 29 30 31]]

累計過程產生的中間結果要記錄到數組中

所以,結果:

[[[[ 0 1 2 3]

[ 4 5 6 7]]

[[ 8 10 12 14]

[16 18 20 22]]]

[[[16 17 18 19]

[20 21 22 23]]

[[40 42 44 46]

[48 50 52 54]]]]

cumsum(2)就對應從[ 0? 1? 2? 3]數組元素開始實現累加,然后記錄中間結果

cumsum(3)對應的是從最里面最小的數組元素,即從0開始實現累加,記錄中間結果

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持我們。

時間: 2019-10-17

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的python中cumsum_python numpy中cumsum的用法详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。