【发布时间】:2019-08-12 08:30:34
【问题描述】:
我想使用 Spark Sql 对数据框的每一列执行分组。数据框将有大约。 1000 列。
我已经尝试迭代数据框中的所有列并在每一列上执行 groupBy。但程序执行超过 1.5 小时
val df = sqlContext
.read
.format("org.apache.spark.sql.cassandra")
.options(Map( "table" -> "exp", "keyspace" -> "testdata"))
.load()
val groupedData= channelDf.columns.map(c => channelDf.groupBy(c).count().take(10).toList)
println("Printing Dataset :"+ dataset)
如果我在数据框中有列,例如名称和金额,那么输出应该是这样的
GroupBy 列名称:
Name Count
Jon 2
Ram 5
David 3
Amount 列上的 GroupBy:
Amount Count
1000 4
2525 3
3000 3
我想要按每列的结果分组。
【问题讨论】:
标签: scala apache-spark group-by apache-spark-sql