Pandas 中的 series.cumprod() 方法是如何工作的?


透過在 Pandas Series 建構函式中使用 cumprod() 方法,我們可以找出給定序列物件的元素的累積乘積。

cumprod() 方法返回一個與原始輸入序列物件長度相同的序列,包含累積乘積。

cumprod() 方法有三個引數:“axis”、“skipna”和附加關鍵字。“skipna”引數用於預設情況下排除缺失值,如果要包含這些缺失值,則將 skipna 引數設定為“False”。

示例 1

# importing required packages
import pandas as pd
import numpy as np

# create a pandas Series object
series = pd.Series([5,np.nan,-2,10])
print(series)

print("Cumulative product: ",series.cumprod())

解釋

在下面的示例中,我們計算 Series 的累積乘積。它返回一個 Series,不改變第一個元素,第二個元素是第一個和第二個元素的乘積,第三個元素是第二個和第三個元素的乘積,以此類推。

輸出

0  5.0
1  NaN
2 -2.0
3 10.0
dtype: float64

Cumulative product:
0    5.0
1    NaN
2  -10.0
3 -100.0
dtype: float64

預設情況下,cumprod() 方法在執行時不包含 Nan 值,因此第 1 個位置的 Nan 值保持不變。

示例 2

# importing required packages
import pandas as pd
import numpy as np

# create a pandas Series object
series = pd.Series([5,-3,np.nan,11,6])
print(series)

print("Cumulative product including NA: ",series.cumprod(skipna=False))

解釋

在這個例子中,我們透過將 skipna 值設定為 False 來計算 cumprod() 方法。這意味著它在執行時不會忽略 NA/空值。

輸出

0  5.0
1 -3.0
2  NaN
3 11.0
4  6.0
dtype: float64

Cumulative product including NA:
0   5.0
1 -15.0
2   NaN
3   NaN
4   NaN
dtype: float64

在上面的輸出塊中,我們可以看到給定序列物件的累積乘積。“2”索引位置之後,我們可以看到只有 Nan 值,這是因為空值與任何其他值的乘積都將只是空值。

更新於:2022年3月9日

274 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.