Python 多列上的多个聚合
我正在Pyspark框架中使用Python。 我正在尝试使用Python 多列上的多个聚合,python,apache-spark,pyspark,Python,Apache Spark,Pyspark,我正在Pyspark框架中使用Python。 我正在尝试使用groupby 我有一个df,列为col1,col2,col3,col4 我想做一些类似的事情: df.groupby(“col1”).sum(“col2”、“col3”).avg(“col4”) 但我得到了一个错误: “DataFrame”对象没有属性“avg” 回溯(最近一次呼叫最后一次): 文件“/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/dataframe.py”,第130
groupby
我有一个df,列为col1
,col2
,col3
,col4
我想做一些类似的事情:
df.groupby(“col1”).sum(“col2”、“col3”).avg(“col4”)
但我得到了一个错误:
“DataFrame”对象没有属性“avg”
回溯(最近一次呼叫最后一次):
文件“/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/dataframe.py”,第1301行,位于getattr
“%s”对象没有属性“%s”(self.类名称,名称))
AttributeError:“DataFrame”对象没有属性“avg”
这是我在模块中的工作方式:
import pyspark.sql.functions as Functions
df2=df.groupBy('col1').agg(Functions.sum('col2'),Functions.sum('col3'),Functions.avg('col4'))
和的可能副本