Pandas DataFrame.expanding(~)
方法用於計算累積統計數據。
參數
1.min_periods
| int
| optional
計算統計數據的窗口中值的最小數量。如果窗口中的觀測值數量小於 min_periods
,則為該窗口返回 NaN
。默認情況下,min_periods=1
。
注意
A 窗戶本質上是計算統計數據的數字(觀察值)序列。
2. center
| boolean
| optional
-
如果
True
,則觀察值設置為窗口的中心。 -
如果
False
,則觀察值設置在窗口的右側。
默認情況下,center=False
。請參閱下麵的示例以進行說明。
3. axis
| int
或 string
| optional
是否按行或列進行擴展:
軸 |
說明 |
---|---|
|
按列展開。 |
|
按行展開。 |
返回值
隨後將用於計算一些累積統計信息的 Window
對象。
例子
計算累積和
考慮以下 DataFrame :
df = pd.DataFrame({"A":[2,4,8],"B":[4,5,6]})
df
A B
0 2 4
1 4 5
2 8 6
按列
要按列計算累積和:
df.expanding().sum()
A B
0 2.0 4.0
1 6.0 9.0
2 14.0 15.0
逐行
要按行計算累積和:
df.expanding(axis=1).sum()
A B
0 2.0 6.0
1 4.0 9.0
2 8.0 14.0
警告
這個例子隻是為了演示如何使用該方法。 Pandas 有一個方法 DataFrame.cumsum(~)
可以直接計算累積和。
指定min_periods
考慮與上麵相同的DataFrame:
df = pd.DataFrame({"A":[2,4,8],"B":[4,5,6]})
df
A B
0 2 4
1 4 5
2 8 6
使用 min_periods=2
調用 expanding(~)
:
df.expanding(2).sum()
A B
0 NaN NaN
1 6.0 9.0
2 14.0 15.0
在這裏,我們得到第一行的NaN
,因為第一個累積和是僅使用 1 個值計算的,該值低於指定的最小值 2。
指定中心參數
考慮以下 DataFrame :
df = pd.DataFrame({"A": [2,4,8,16,25]})
df
A
0 2
1 4
2 8
3 16
4 25
調用 expanding(~)
,並將 center
參數設置為 True
:
df.expanding(center=True).sum()
A
0 14.0
1 30.0
2 55.0
3 53.0
4 49.0
初始選擇值的大小確定如下:
ceil(num_of_rows/2) = 3
以下是數字計算方式的詳細說明:
A[0]: sum(2, 4, 8) = 14
A[1]: sum(2, 4, 8, 16) = 30
A[2]: sum(2, 4, 8, 16, 25) = 55
A[3]: sum(4, 8, 16, 25) = 53
A[4]: sum(8, 16, 25) = 49
相關用法
- Python Pandas DataFrame explode方法用法及代碼示例
- Python PySpark DataFrame exceptAll方法用法及代碼示例
- Python Pandas DataFrame empty屬性用法及代碼示例
- Python Pandas DataFrame equals方法用法及代碼示例
- Python Pandas DataFrame eq方法用法及代碼示例
- Python Pandas DataFrame eval方法用法及代碼示例
- Python Pandas DataFrame pop方法用法及代碼示例
- Python Pandas DataFrame nsmallest方法用法及代碼示例
- Python Pandas DataFrame sample方法用法及代碼示例
- Python Pandas DataFrame items方法用法及代碼示例
- Python Pandas DataFrame max方法用法及代碼示例
- Python Pandas DataFrame swaplevel方法用法及代碼示例
- Python Pandas DataFrame agg方法用法及代碼示例
- Python Pandas DataFrame copy方法用法及代碼示例
- Python Pandas DataFrame pow方法用法及代碼示例
- Python Pandas DataFrame insert方法用法及代碼示例
- Python Pandas DataFrame lt方法用法及代碼示例
- Python Pandas DataFrame all方法用法及代碼示例
- Python Pandas DataFrame unstack方法用法及代碼示例
- Python Pandas DataFrame mean方法用法及代碼示例
- Python PySpark DataFrame filter方法用法及代碼示例
- Python Pandas DataFrame tz_convert方法用法及代碼示例
- Python Pandas DataFrame isin方法用法及代碼示例
- Python PySpark DataFrame collect方法用法及代碼示例
- Python PySpark DataFrame intersect方法用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 Pandas DataFrame | expanding method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。