pyspark.sql.GroupedData.agg¶
-
GroupedData。
gg
( *exprs:聯盟(pyspark.sql.column.Column,Dict(str,str]] )→pyspark.sql.dataframe.DataFrame¶ -
計算聚合並返回結果
DataFrame
。可用的聚合函數可以是:
內置的聚合函數,如avg,馬克斯,最小值,總和,數
集團總熊貓udf創建
pyspark.sql.functions.pandas_udf ()
請注意
沒有部分聚合組總udf,即。,需要全麵洗牌。此外,一組的所有數據將被加載到內存中,因此用戶應該意識到潛在的伯父風險如果數據傾斜和某些群體是裝入內存太大。
如果
exprs
是一個單dict
從字符串映射到字符串,那麼關鍵是列上執行聚合,聚合函數和價值。另外,
exprs
也可以總列表嗎列
表達式。- 參數
-
- exprs dict
-
dict類型映射的列名稱(字符串)聚合函數(字符串),或者一個列表
列
。
筆記
內置的聚合函數和組總熊貓不能混合在一個udf調用這個函數。
例子
> > >法國燃氣公司=df。groupBy(df。的名字)> > >排序(法國燃氣公司。gg({“*”:“數”})。收集())行(name =“愛麗絲”,計數(1)= 1)、行(name =“鮑勃”,計數(1)= 1))
> > >從pyspark.sql進口功能作為F> > >排序(法國燃氣公司。gg(F。最小值(df。年齡))。收集())行(name =“愛麗絲”,min(年齡)= 2)、行(name =“鮑勃”,min(年齡)= 5)]
> > >從pyspark.sql.functions進口pandas_udf,PandasUDFType> > >@pandas_udf(“int”,PandasUDFType。GROUPED_AGG)…defmin_udf(v):…返回v。最小值()> > >排序(法國燃氣公司。gg(min_udf(df。年齡))。收集())行(name =“愛麗絲”,min_udf(年齡)= 2)、行(name =“鮑勃”,min_udf(年齡)= 5)]