用法:
SeriesGroupBy.aggregate(func=None, *args, engine=None, engine_kwargs=None, **kwargs)
在指定軸上使用一項或多項操作進行聚合。
- func:函數、str、列表或字典
用於聚合數據的函數。如果是函數,則必須在傳遞 Series 或傳遞給 Series.apply 時工作。
接受的組合是:
function
字符串函數名
函數和/或函數名稱列表,例如
[np.sum, 'mean']
軸標簽的字典 -> 函數、函數名稱或此類列表。
還可以接受指定了
engine='numba'
的 Numba JIT 函數。此引擎僅支持傳遞單個函數。如果選擇
'numba'
引擎,該函數必須是用戶定義的函數,函數簽名中的第一個和第二個參數分別是values
和index
。每個組的索引將傳遞給用戶定義的函數,並且可以選擇使用。- *args:
要傳遞給 func 的位置參數。
- engine:str,默認無
'cython'
:通過 cython 的 C-extensions 運行函數。'numba'
:通過 numba 中的 JIT 編譯代碼運行函數。None
:默認為'cython'
或全局設置compute.use_numba
- engine_kwargs:字典,默認無
對於
'cython'
引擎,沒有接受的engine_kwargs
對於
'numba'
引擎,引擎可以接受nopython
、nogil
和parallel
字典鍵。這些值必須是True
或False
。'numba'
引擎的默認engine_kwargs
是{'nopython':True, 'nogil':False, 'parallel':False}
並將應用於函數
- **kwargs:
要傳遞給 func 的關鍵字參數。
- Series
參數:
返回:
注意:
使用
engine='numba'
時,內部不會有 “fall back” 行為。組數據和組索引將作為 numpy 數組傳遞給 JITed 用戶定義函數,並且不會嘗試替代執行嘗試。改變傳遞對象的函數可能會產生意外行為或錯誤,因此不受支持。有關更多詳細信息,請參閱使用用戶定義函數 (UDF) 方法進行變異。
例子:
>>> s = pd.Series([1, 2, 3, 4])
>>> s 0 1 1 2 2 3 3 4 dtype:int64
>>> s.groupby([1, 1, 2, 2]).min() 1 1 2 3 dtype:int64
>>> s.groupby([1, 1, 2, 2]).agg('min') 1 1 2 3 dtype:int64
>>> s.groupby([1, 1, 2, 2]).agg(['min', 'max']) min max 1 1 2 2 3 4
可以通過將所需的列名和聚合作為關鍵字參數傳遞來控製輸出列名。
>>> s.groupby([1, 1, 2, 2]).agg( ... minimum='min', ... maximum='max', ... ) minimum maximum 1 1 2 2 3 4
>>> s.groupby([1, 1, 2, 2]).agg(lambda x:x.astype(float).min()) 1 1.0 2 3.0 dtype:float64
相關用法
- Python pandas.core.groupby.SeriesGroupBy.unique用法及代碼示例
- Python pandas.core.groupby.SeriesGroupBy.nlargest用法及代碼示例
- Python pandas.core.groupby.SeriesGroupBy.transform用法及代碼示例
- Python pandas.core.groupby.SeriesGroupBy.nsmallest用法及代碼示例
- Python pandas.core.groupby.GroupBy.nth用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.hist用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.resample用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.quantile用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.cumcount用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.sample用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.fillna用法及代碼示例
- Python pandas.core.groupby.GroupBy.cumcount用法及代碼示例
- Python pandas.core.groupby.GroupBy.mean用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.filter用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.aggregate用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.nunique用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.describe用法及代碼示例
- Python pandas.core.groupby.GroupBy.tail用法及代碼示例
- Python pandas.core.groupby.DataFrameGroupBy.value_counts用法及代碼示例
- Python pandas.core.groupby.GroupBy.rank用法及代碼示例
注:本文由純淨天空篩選整理自pandas.pydata.org大神的英文原創作品 pandas.core.groupby.SeriesGroupBy.aggregate。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。