Java 如何在spark数据帧的嵌套阵列上设计UDAF
输入数据:Java 如何在spark数据帧的嵌套阵列上设计UDAF,java,apache-spark,apache-spark-sql,spark-dataframe,Java,Apache Spark,Apache Spark Sql,Spark Dataframe,输入数据: +---+----+----+ |idx| v1| v2| +---+----+----+ | a| 1| 3| | a|null| 2| | a| 4| 5| | b| 6| 1| | b| 7|null| +---+----+----+ 我想要的是: +---+-------------------------------------------+ |idx|total
+---+----+----+
|idx| v1| v2|
+---+----+----+
| a| 1| 3|
| a|null| 2|
| a| 4| 5|
| b| 6| 1|
| b| 7|null|
+---+----+----+
我想要的是:
+---+-------------------------------------------+
|idx|total |
+---+-------------------------------------------+
|b |[WrappedArray(6, 7), WrappedArray(1)] |
|a |[WrappedArray(1, 4), WrappedArray(3, 2, 5)]|
+---+-------------------------------------------+
我知道我可以通过
df.groupBy("idx").agg(array(collect_list(col("v1")), collect_list(col("v2"))));
但是我想通过JAVA中的UDAF实现这个结果