相关疑难解决方法(0)

Spark SQL:将聚合函数应用于列列表

有没有办法将聚合函数应用于数据帧的所有(或列表)列groupBy?换句话说,有没有办法避免为每一列执行此操作:

df.groupBy("col1")
  .agg(sum("col2").alias("col2"), sum("col3").alias("col3"), ...)
Run Code Online (Sandbox Code Playgroud)

aggregate-functions dataframe apache-spark apache-spark-sql

65
推荐指数
2
解决办法
12万
查看次数

对spark数据帧的同一列进行多次聚合操作

我有三个字符串类型的数组包含以下信息:

  • groupBy数组:包含我想要对数据进行分组的列的名称.
  • aggregate array:包含我想要聚合的列的名称.
  • operations array:包含我想要执行的聚合操作

我正在尝试使用spark数据帧来实现这一目标.Spark数据框提供了agg(),您可以在其中传递Map [String,String](列名和相应的聚合操作)作为输入,但是我想对数据的同一列执行不同的聚合操作.有关如何实现这一目标的任何建议?

dataframe apache-spark apache-spark-sql

28
推荐指数
3
解决办法
2万
查看次数