pyspark.sql.GroupedData.agg

GroupedData。 gg ( *exprs:聯盟(pyspark.sql.column.Column,Dict(str,str]] )→pyspark.sql.dataframe.DataFrame

計算聚合並返回結果DataFrame

可用的聚合函數可以是:

  1. 內置的聚合函數,如avg,馬克斯,最小值,總和,

  2. 集團總熊貓udf創建pyspark.sql.functions.pandas_udf ()

    請注意

    沒有部分聚合組總udf,即。,需要全麵洗牌。此外,一組的所有數據將被加載到內存中,因此用戶應該意識到潛在的伯父風險如果數據傾斜和某些群體是裝入內存太大。

如果exprs是一個單dict從字符串映射到字符串,那麼關鍵是列上執行聚合,聚合函數和價值。

另外,exprs也可以總列表嗎表達式。

參數
exprs dict

dict類型映射的列名稱(字符串)聚合函數(字符串),或者一個列表

筆記

內置的聚合函數和組總熊貓不能混合在一個udf調用這個函數。

例子

> > >法國燃氣公司=dfgroupBy(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”,PandasUDFTypeGROUPED_AGG)defmin_udf(v):返回v最小值()> > >排序(法國燃氣公司gg(min_udf(df年齡))收集())行(name =“愛麗絲”,min_udf(年齡)= 2)、行(name =“鮑勃”,min_udf(年齡)= 5)]