【发布时间】:2021-02-17 01:55:20
【问题描述】:
所以,我有一个具有此架构的数据框:
StructType(StructField(experimentid,StringType,true), StructField(descinten,ArrayType(MapType(StringType,DoubleType,true),true),true))
内容是这样的:
+----------------+-------------------------------------------------------------+
|experimentid |descinten |
+----------------+-------------------------------------------------------------+
|id1 |[[x1->120.51513], [x2->57.59762], [x3->83028.867]] |
|id2 |[[x2->478.5698], [x3->79.6873], [x1->341.89]] |
+----------------+-------------------------------------------------------------+
我想按升序对“descinten”进行排序,然后取排序后的值。我尝试分别对每一行进行映射和排序,但出现如下错误:
ClassCastException: scala.collection.mutable.WrappedArray$ofRef 无法转换为 scala.collection.Map
或类似的。在 Java 中是否有更直接的方法?
【问题讨论】:
标签: java apache-spark collections mapping sql-order-by