欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

聊聊prod()與cumprod()區(qū)別cumsum()

 更新時間:2021年05月18日 11:27:07   作者:quantLearner  
這篇文章主要介紹了prod()與cumprod()區(qū)別cumsum(),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

pandas.Series.cumprod 官方文檔

cumprod()累積連乘

Series.cumprod(axis=None, skipna=True, *args, **kwargs)
#實現(xiàn)功能:Return cumulative product over a DataFrame or Series axis.
#實現(xiàn)功能:Returns a DataFrame or Series of the same size containing the cumulative product.
#return:scalar or Series

cumsum()累積連加

pandas.Series.prod官方文檔


Series.prod(axis=None, skipna=None, level=None, numeric_only=None, min_count=0, **kwargs)
# 實現(xiàn)功能:Return the product of the values for the requested axis.
# return:scalar or Series

優(yōu)點沒看明白,因為常規(guī)情況下,所用的.prod()并非pandas下的函數(shù),而是numpy下的函數(shù)。

numpy.prod官方文檔

numpy.prod(a, axis=None, dtype=None, out=None, keepdims=<class numpy._globals._NoValue>)
# 實現(xiàn)功能:Return the product of array elements over a given axis.
# return:product_along_axis : ndarray

返回給定軸上數(shù)組元素的乘積。

跟cumprod不同,cumprod是計算當前一個累積乘上前面所有的數(shù)據(jù),更多是一個list;prod返回的是給定這個軸上最終一個值。

補充:【python初學者】簡單易懂的圖解:np.cumsum和np.cumprod函數(shù)到底在干嘛?

1.np.cumsum

本人是一名python小白,最近過完了python的基本知識后,在看《利用python進行數(shù)據(jù)分析》這本書,書中cumsum函數(shù)一筆帶過留下本小白“懵逼樹下你和我”,當然是我自己的問題不是書的問題,經(jīng)過畫圖理解后漸漸明白了這個函數(shù)到底在干么。

1.1np.cumsum-軸的概念

首先,在學習cumsum函數(shù)之前我們應該先明白什么是軸,以下面代碼來進行說明:

arr=np.arange(1,17,1).reshape((2,2,4))
arr
array([[[ 1,  2,  3,  4],
        [ 5,  6,  7,  8]],

       [[ 9, 10, 11, 12],
        [13, 14, 15, 16]]])

其實數(shù)組的軸(axis)就是數(shù)組的維度,上面的代碼生成了一個224的數(shù)組,所以

1、這個數(shù)組的0軸為2 ,axis=0

2、這個數(shù)組的1軸為2 ,axis=1

3、這個數(shù)組的2軸為4 ,axis=2

該數(shù)組如圖所示(藍,橙,黃,綠都是2軸,橙和綠上的“2軸”畫圖時忘了標注):

3維數(shù)組

這里還要補充說一下:紅色的數(shù)字只是因為我用的iPad畫圖很不方便所以沒改成黑色,忽略就好

1.2cumsum(axis=0)

cumsum作用計算軸向元素累加和,返回由中間結果組成的數(shù)組

這句概念中我認為大家理解起來比較難受的地方應該是軸向元素累加。

首先,通過前文對軸概念的理解我們可以知道

axis=0代表著最外層的維度也就是0軸(這里可能說法不太正確,主要為了配合上節(jié)圖片),所以就是0軸的累加計算,我們以前文用到的數(shù)組為例(紅色虛線表示按照0軸進行累加):

step1:

沿著0軸進行累加

0軸累加

step2:

將[1,2,3,4]和[9,10,11,12]進行累加,將[5,6,7,8]和[13,14,15,16]

0軸累加結果

代碼:

arr=np.array([[[ 1,  2,  3,  4],
               [ 5,  6,  7,  8]],
              [[ 9, 10, 11, 12],
               [13, 14, 15, 16]]])
arr.cumsum(axis=0)

結果為:

array([[[ 1,  2,  3,  4],
        [ 5,  6,  7,  8]],

       [[10, 12, 14, 16],
        [18, 20, 22, 24]]])

1.3cumsum(axis=1)

這里我們還是以之前舉例的數(shù)組為例,沿著1軸進行累加(也就是2 * 2 * 4中的第二個2),這里為了方便講解我將數(shù)組的擺放位置換了一下,不影響哈~

step1:

紅色虛線代表我們現(xiàn)在應該沿著1軸進行累加啦!

1軸累加

step2:

既然沿著1軸進行累加,我們是不是就應該在1軸內(nèi)部進行累加呢?

所以就應該[1,2,3,4]和[5,6,7,8]進行累加,[9,10,11,12]和[13,14,15,16]進行累加

在這里插入圖片描述

代碼結果:

arr.cumsum(axis=1)
#運行結果
array([[[ 1,  2,  3,  4],
        [ 6,  8, 10, 12]],

       [[ 9, 10, 11, 12],
        [22, 24, 26, 28]]])

1.4cumsum(axis=2)

都已經(jīng)講到沿著軸2進行累加了,廢話就不多說了直接放圖,大家看看有沒有做對吧

step1:

老規(guī)矩:紅色虛線表示沿著2軸進行累加,所以應該是1,2,3,4進行累加,5,6,7,8進行累加,依次類推

2軸累加

step2

我們以藍色這一項為例:

第一項:1第二項:1+2=3第三項:1+2+3=6第四項:1+2+3+4=10

在這里插入圖片描述

代碼結果:

arr.cumsum(axis=2)
#運行結果
array([[[ 1,  3,  6, 10],
        [ 5, 11, 18, 26]],

       [[ 9, 19, 30, 42],
        [13, 27, 42, 58]]])

講到這里我相信大家應該能自己摸索出cumprod函數(shù)在干嘛啦!本篇文章里面因為需要結合圖片進行講解所以有些句子并不恰當~希望本篇文章能夠讓你明白cumsum函數(shù)到底在干嘛呀~

相關文章

  • Python基于mediainfo批量重命名圖片文件

    Python基于mediainfo批量重命名圖片文件

    這篇文章主要介紹了Python基于mediainfo批量重命名圖片文件的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-12-12
  • Python中三種花式打印的示例詳解

    Python中三種花式打印的示例詳解

    在Python中有很多好玩的花式打印,我們今天就來挑戰(zhàn)下面三個常見的花式打印。文中的示例代碼講解詳細,感興趣的小伙伴快跟隨小編一起學習一下吧
    2022-03-03
  • PyCharm安裝庫numpy失敗問題的詳細解決方法

    PyCharm安裝庫numpy失敗問題的詳細解決方法

    今天使用pycharm編譯python程序時,由于要調(diào)用numpy包,但又未曾安裝numpy,于是就根據(jù)pycharm的提示進行安裝,最后竟然提示出錯,下面這篇文章主要給大家介紹了關于PyCharm安裝庫numpy失敗問題的詳細解決方法,需要的朋友可以參考下
    2022-06-06
  • Python利用帶權重隨機數(shù)解決抽獎和游戲爆裝備問題

    Python利用帶權重隨機數(shù)解決抽獎和游戲爆裝備問題

    帶權重隨機數(shù)即是隨機數(shù)各個區(qū)間段被抽中的概率根據(jù)權重而不同,這里我們就來看一下Python利用帶權重隨機數(shù)解決抽獎和游戲爆裝備問題的方法,首先還是來進一步解釋帶權隨機數(shù):
    2016-06-06
  • pytorch中的dataset用法詳解

    pytorch中的dataset用法詳解

    這篇文章主要介紹了pytorch的dataset用法詳解,當我們繼承了一個?Dataset類之后,我們需要重寫?len?方法,該方法提供了dataset的大?。?getitem?方法,?該方法支持從?0?到?len(self)的索引,下面來看看附有代碼的講解吧,希望對你的學習或者工作有所幫助
    2022-01-01
  • python字符串連接方法分析

    python字符串連接方法分析

    這篇文章主要介紹了python字符串連接方法,結合實例形式對比分析了常用的字符串連接技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-04-04
  • 如何以Winsows Service方式運行JupyterLab

    如何以Winsows Service方式運行JupyterLab

    這篇文章主要介紹了如何以Winsows Service方式運行JupyterLab的教程
    2020-08-08
  • python中readline判斷文件讀取結束的方法

    python中readline判斷文件讀取結束的方法

    這篇文章主要介紹了python中readline判斷文件讀取結束的方法,實例形式詳細分析了Python中readline的用法,需要的朋友可以參考下
    2014-11-11
  • python3.6之xlwt如何設置單元格對齊方式

    python3.6之xlwt如何設置單元格對齊方式

    這篇文章主要介紹了python3.6之xlwt如何設置單元格對齊方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 在tensorflow下利用plt畫論文中l(wèi)oss,acc等曲線圖實例

    在tensorflow下利用plt畫論文中l(wèi)oss,acc等曲線圖實例

    這篇文章主要介紹了在tensorflow下利用plt畫論文中l(wèi)oss,acc等曲線圖實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06

最新評論